deque_queue_list

 

#include <iostream>
#include <deque>//front push pop back push pop [] at()
#include <queue>
#include <stack>
#include <list> //remove
using namespace std;

void listTest()
{
    int iArray[]={1,2,3,4,5,3,3,3,3,3,6};
    list<int> listInt(iArray,iArray+11);

    list<int>::iterator it_list=listInt.begin();
    for (;it_list!=listInt.end();++it_list)
    {
        cout<<*it_list<<" ";
    }
    cout<<endl;
    cout<<"=============================="<<endl;
    int i;
    for(i=0;i<11;i++)// (i-=1;i>=0;--i)
    {
        listInt.push_front(iArray[i]);
    }
    ///

    for(i=0;i<11;i++)//
    {
        listInt.pop_front();
    }
    //-----------------------------------
    cout<<"pop front:"<<endl;
    it_list=listInt.begin();
    for (;it_list!=listInt.end();++it_list)
    {
        cout<<*it_list<<" ";
    }
    cout<<endl;
    cout<<"=============================="<<endl;
    

    
    for(i-=1;i>=0;--i)
    {
        listInt.push_front(iArray[i]);
    }
    
    cout<<"push front:"<<endl;
    it_list=listInt.begin();
    for (;it_list!=listInt.end();++it_list)
    {
        cout<<*it_list<<" ";
    }
    cout<<endl;
    cout<<"=============================="<<endl;

    
    for(i=0;i<11;i++)//
    {
        listInt.pop_back();
    }
    
    cout<<"pop back:"<<endl;
    it_list=listInt.begin();
    for (;it_list!=listInt.end();++it_list)
    {
        cout<<*it_list<<" ";
    }
    cout<<endl;
    cout<<"=============================="<<endl;

    
    listInt.remove(3);
    cout<<"remove 3:"<<endl;
    it_list=listInt.begin();
    for (;it_list!=listInt.end();++it_list)
    {
        cout<<*it_list<<" ";
    }
    cout<<endl;
/*
1 2 3 4 5 3 3 3 3 3 6
==============================
pop front:
1 2 3 4 5 3 3 3 3 3 6
==============================
push front:
1 2 3 4 5 3 3 3 3 3 6 1 2 3 4 5 3 3 3 3 3 6
==============================
pop back:
1 2 3 4 5 3 3 3 3 3 6
==============================
remove 3:
1 2 4 5 6
Press any key to continue    
*/
}


void stackTest()
{
    int iArray[]={1,2,3,4,5,3,3,3,3,3,6};
    //stack<int> stackInt(iArray,iArray+11);
    stack<int> stackInt;
    for (int i=0;i<sizeof(iArray)/sizeof(int);i++)
    {
        stackInt.push(iArray[i]);
    }

    cout<<"pop~:"<<endl;
    int len=stackInt.size();
    for (i=0;i<len;i++)
    {
        cout<<stackInt.top()<<" ";
        stackInt.pop();
    }
    cout<<endl;
/*
pop~:
6 3 3 3 3 3 5 4 3 2 1
Press any key to continue    
    */
}


void queueTest()
{ 
    int iArray[]={1,2,3,4,5,3,3,3,3,3,6};
    //queue<int> queueInt(iArray,iArray+11);
    queue<int> queueInt;
    for (int i=0;i<11;i++)
    {
        queueInt.push(iArray[i]);
    }
    //queue<int>::iterator it_queue=queueInt.begin();
    //cout<<queueInt.end()<<endl;
    ////
    cout<<"pop~:"<<endl;
    int len=queueInt.size();
    for (i=0;i<len;i++)
    {
        cout<<queueInt.front()<<" ";
        queueInt.pop();
    }
    cout<<endl;
/*
pop~:
1 2 3 4 5 3 3 3 3 3 6
Press any key to continue
*/
}

void main()
{
    listTest();return;
    //stackTest();return;
    //queueTest();return;
    int iArray[]={1,2,3,4,5,3,3,3,3,3,6};
    //deque<int> deInt(iArray,iArray+11);
    deque<int> deInt;
    for (int i=0;i<11;i++)
    {
        deInt.push_back(iArray[i]);
    }
    
    deque<int>::iterator itorDeque=deInt.begin();
    for (;itorDeque!=deInt.end();++itorDeque)
    {
        cout<<*itorDeque<<" ";
    }
    cout<<endl;
    cout<<"=============================="<<endl;
    for(i=0;i<11;i++)// (i-=1;i>=0;--i)
    {
        deInt.push_front(iArray[i]);
    }
    for(i=0;i<11;i++)//
    {
        deInt.pop_front();
    }
    itorDeque=deInt.begin();
    for (;itorDeque!=deInt.end();++itorDeque)
    {
        cout<<*itorDeque<<" ";
    }
    cout<<endl;

    for(i-=1;i>=0;--i)
    {
        deInt.push_front(iArray[i]);
    }

    cout<<"push front:"<<endl;
    itorDeque=deInt.begin();
    for (;itorDeque!=deInt.end();++itorDeque)
    {
        cout<<*itorDeque<<" ";
    }
    cout<<endl;

    for(i=0;i<11;i++)//
    {
        deInt.pop_back();
    }

    cout<<"pop back:"<<endl;
    itorDeque=deInt.begin();
    for (;itorDeque!=deInt.end();++itorDeque)
    {
        cout<<*itorDeque<<" ";
    }
    cout<<endl;

    deInt.push_front(0);
    cout<<"at:"<<endl;
    for (i=0;i<deInt.size();i++)
    {
        cout<<deInt.at(i)<<" ";
    }
    cout<<endl;
/*
1 2 3 4 5 3 3 3 3 3 6
==============================
1 2 3 4 5 3 3 3 3 3 6
push front:
1 2 3 4 5 3 3 3 3 3 6 1 2 3 4 5 3 3 3 3 3 6
pop back:
1 2 3 4 5 3 3 3 3 3 6
at:
0 1 2 3 4 5 3 3 3 3 3 6
Press any key to continue
*/

}

 

转载于:https://www.cnblogs.com/sky20080101/p/6403032.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值