STLでの双方向キューdeque
1276 ワード
1.STLの双方向キューdeque dequeはシーケンスコンテナの一種であり、可変長配列でもある.Dequeを使用するには、ヘッダファイルdequeを含める必要があります.vectorに適用されるすべての操作はdequeに適用されます. dequeとvectorには似たようなところがたくさんあります.Dequeでは、ランダムアクセスの任意の要素は定数時間内に完了します(vectorより遅い).これはvectorに比べて、vectorがヘッダから要素を削除または追加する速度が遅く、テールに要素を追加する性能が良好であり、dequeはヘッダテールから要素を追加する性能が良好である(多くの場合、定数時間内に完了することができる).2つのvectorにないメンバー関数があります: 2.例は次のとおりです.
void push_front (const T & val); // val
void pop_front(); //
#include "iostream"
#include "deque"
using namespace std;
/* deque: queue */
int main(){
deque d;
for(int i = 0; i < 100; i++)
d.push_back(i);
cout << "size1 = " << d.size() << endl;
d.push_front(-1); // val
cout << "d[0]=" << d.at(0) << ",size2 = " << d.size() << endl;
d.pop_front(); //
cout << "d[0]=" << d.at(0) << ",size3 = " << d.size() << endl;
d.resize(0);
cout << "d.empty() = " << d.empty() << endl;
return 0;
}