The deque::resize() is an inbuilt function in C++ STL which changes the size of the deque.
If the given size is greater than the current size, then new elements are inserted at the end of the deque.
If the given size is smaller than the current size, then extra elements are destroyed.
Syntax:
deque_name.resize(n)
Parameter: The function accepts only one mandatory parameter n which specifies the size of the deque.
Return value: The function does not return anything.
Below program illustrates the above function:
Program 1:
#include <bits/stdc++.h>
using namespace std;
int main()
{
deque< int > dq = { 10, 20, 30, 40, 50 };
cout << "Size before resize " << dq.size() << "\n" ;
cout << "The contents of deque :" ;
for ( auto it = dq.begin(); it != dq.end(); ++it)
cout << *it << " " ;
cout << endl;
dq.resize(7);
cout << "Size after resize " << dq.size() << "\n" ;
cout << "The contents of deque :" ;
for ( auto it = dq.begin(); it != dq.end(); ++it)
cout << *it << " " ;
return 0;
}
|
Output:
Size before resize 5
The contents of deque :10 20 30 40 50
Size after resize 7
The contents of deque :10 20 30 40 50 0 0
Program 2:
#include <bits/stdc++.h>
using namespace std;
int main()
{
deque< int > dq = { 10, 20, 30, 40, 50 };
cout << "Size before resize " << dq.size() << "\n" ;
cout << "The contents of deque :" ;
for ( auto it = dq.begin(); it != dq.end(); ++it)
cout << *it << " " ;
cout << endl;
dq.resize(3);
cout << "Size after resize " << dq.size() << "\n" ;
cout << "The contents of deque :" ;
for ( auto it = dq.begin(); it != dq.end(); ++it)
cout << *it << " " ;
return 0;
}
|
Output:
Size before resize 5
The contents of deque :10 20 30 40 50
Size after resize 3
The contents of deque :10 20 30
Time Complexity: O(N)