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
*/

}

 

posted @ 2017-02-15 19:37  sky20080101  阅读(179)  评论(0编辑  收藏  举报