|
- #include <iostream>
- #include <vector>
- #include <stack>
- #include <queue>
- #include <list>
- #include <algorithm>
- using namespace std;
- //排列算法函数
- void show(int &vi)
- {
- cout<<"value:"<<vi<<endl;
- }
- int comp(const int &a,const int &b)
- {
- return a>b;
- }
- int main()
- {
- //测试线性表
- cout<<"测试线性表"<<endl;
- //构造线性表
- vector <int> vi(10);
- int i=0;
- for(i=0;(i < vi.capacity());i++)
- {
- vi[i]=i*10;
- }
- cout <<"capacity="<<vi.capacity()<<"size="<<vi.size()<<endl;
- cout <<"循环次数:"<<i<<endl;
- vi.resize(5);
- cout <<"capacity="<<vi.capacity()<<"size="<<vi.size()<<endl;
- cout<<"测试栈"<<endl;
- //测试栈的使用
- stack <double>stk;
- for (i=0;i<9;i++)
- {
- stk.push(double(i)/10.0);
- }
- for(i=0;i<9;i++)
- {
- cout <<"当前元素:"<<i<<"值:"<<stk.top()<<endl;
- stk.pop();
- }
- cout<<"测试队列"<<endl;
- queue <double> que;
- for (i=0;i<9;i++)
- {
- que.push(double(i)/10.0);
- }
- for(i=0;i<9;i++)
- {
- cout <<"当前元素:"<<i<<"值:"<<que.front()<<endl;
- que.pop();
- }
- //测试迭代器
- cout<<"测试迭代器"<<endl;
- list <double> lst;
- for (i=0;i<=9;i++)
- {
- lst.push_back(double(i)/10);
- }
- list <double> ::iterator current =lst.begin();
- while(current !=lst.end())
- {
- cout<<"value:"<< *current<<endl;
- current++;
- }
- //测试排列算法
- cout<<"测试排列算法"<<endl;
- cout<<"排列前"<<endl;
- for_each(vi.begin(),vi.end(),show);
- cout<<"排列后"<<endl;
- sort(vi.begin(),vi.end(),comp);
- for_each(vi.begin(),vi.end(),show);
- //结尾结束
- cin>>i;
- return 0;
- }
复制代码 |
上一篇: 二叉树的深度附代码下一篇: 出现这样是啥原因啊?
|