CS/C++

[Mastering C++ Programming] - Deque

sliver__ 2022. 12. 4. 12:15
728x90
  • Deque는 Double ended queue 이며 dynamic array 또는 vector로 구현되어있다.
  • O(1)에 front, back에 input이 가능하다.
  • deque는 real location에 영향을 받지 않는다.

#include <iostream>
#include <deque>
#include <algorithm>
#include <iterator>
using namespace std;

int main () {
  deque<int> d = { 10, 20, 30, 40, 50 };

  cout << "\nInitial size of deque is " << d.size() << endl;

  d.push_back( 60 );
  d.push_front( 5 );

  cout << "\nSize of deque after push back and front is " << d.size() << endl;

  copy ( d.begin(), d.end(), ostream_iterator<int>( cout, "\t" ) );
  d.clear();

  cout << "\nSize of deque after clearing all values is " << d.size() <<
endl;

  cout << "\nIs the deque empty after clearing values ? " << ( d.empty()
? "true" : "false" ) << endl;
  
return 0;
}

 

  • 결과는 아래와 같다.
./a.out

Initial size of deque is 5

Size of deque after push back and front is 7
5	10	20	30	40	50	60
Size of deque after clearing all values is 0

Is the deque empty after clearing values ? true

 

728x90