标签:des style blog class code java
#include <iostream> #include <deque> using namespace std; typedef deque<int> INTDEQUE; // 从前向后显示deque 队列的全部元素 void put_deque(INTDEQUE deque, char *name) { INTDEQUE::iterator pdeque;// 仍然使用迭代器输出 cout << "The contents of " << name << " : "; for(pdeque = deque.begin(); pdeque != deque.end(); pdeque++) cout << *pdeque << " ";// 注意有 "*" 号哦,没有"*" 号的话会报错 cout<<endl; } // 测试deqtor 容器的功能 int main() { //deq1 对象初始为空 INTDEQUE deq1; //deq2 对象最初有10 个值为6 的元素 INTDEQUE deq2(10,6); // 声明一个名为i 的双向迭代器变量 INTDEQUE::iterator i; // 从前向后显示deq1 中的数据 put_deque(deq1,"deq1"); // 从前向后显示deq2 中的数据 put_deque(deq2,"deq2"); // 从deq1 序列后面添加两个元素 deq1.push_back(2); deq1.push_back(4); cout<<"deq1.push_back(2) and deq1.push_back(4):"<<endl; put_deque(deq1,"deq1"); // 从deq1 序列前面添加两个元素 deq1.push_front(5); deq1.push_front(7); cout<<"deq1.push_front(5) and deq1.push_front(7):"<<endl; put_deque(deq1,"deq1"); // 在deq1 序列中间插入数据 deq1.insert(deq1.begin()+1,3,9); cout<<"deq1.insert(deq1.begin()+1,3,9):"<<endl; put_deque(deq1,"deq1"); // 测试引用类函数 cout<<"deq1.at(4)="<<deq1.at(4)<<endl; cout<<"deq1[4]="<<deq1[4]<<endl; deq1.at(1)=10; deq1[2]=12; cout<<"deq1.at(1)=10 and deq1[2]=12 :"<<endl; put_deque(deq1,"deq1"); // 从deq1 序列的前后各移去一个元素 deq1.pop_front(); deq1.pop_back(); cout<<"deq1.pop_front() and deq1.pop_back():"<<endl; put_deque(deq1,"deq1"); // 清除deq1 中的第2 个元素 deq1.erase(deq1.begin()+1); cout<<"deq1.erase(deq1.begin()+1):"<<endl; put_deque(deq1,"deq1"); // 对deq2 赋值并显示 deq2.assign(8,1); cout<<"deq2.assign(8,1):"<<endl; put_deque(deq2,"deq2"); }
#include <iostream> #include <string> #include <list> using namespace std; void PrintIt(list<int> n) { for (list<int>::iterator iter = n.begin(); iter != n.end(); ++iter) cout << *iter << " ";//用迭代器进行输出循环 } int main(void) { list<int> listn1, listn2; //给listn1,listn2初始化 listn1.push_back(123); listn1.push_back(0); listn1.push_back(34); listn1.push_back(1123); //now listn1:123,0,34,1123 listn2.push_back(100); listn2.push_back(12); //now listn2:12,100 listn1.sort(); listn2.sort(); //给listn1和listn2排序 //now listn1: 0,34,123,1123 listn2: 12,100 PrintIt(listn1); cout << endl; PrintIt(listn2); listn1.merge(listn2); //合并两个排序列表后,listn1: 0,12,34,100,123,1123 cout << endl; PrintIt(listn1); cin.get(); }
STL--双端队列(deque)和链表(list),布布扣,bubuko.com
标签:des style blog class code java
原文地址:http://www.cnblogs.com/archimedes/p/cpp-deque-list.html