C++顺序容器之deque初探

C++顺序容器之deque初探

deque是双端队列,与vector非常相似,是顺序容器,不同的是,deque可以在数组开头和末尾插入和删除数据。支持快速随机访问。

#include<iostream>
#include<deque>
#include<algorithm>
using namespace std;
int main()
{
    deque<int> a;
    // 在末尾插入数据
    a.push_back(3);
    a.push_back(4);
    a.push_back(5);
    // 在开头插入数据
    a.push_front(2);
    a.push_front(1);
    a.push_front(0);
    // 以数组方式输出
    for (size_t n = 0; n < a.size(); ++n)
        cout << "a[" << n << "] = " << a[n] << endl;

    cout << endl;
    a.pop_back();
    a.pop_front();
    // 以迭代器方式输出
    deque<int>::iterator iter;
    for (iter = a.begin(); iter < a.end(); ++iter)
    {
        // 计算数组下标,distance包含在algorithm中
        int index = distance(a.begin(), iter);
        cout << "a[" << index << "] = " << *iter << endl;
    }

    system("pause");
    return 0;
}

程序输出结果:

a[0] = 0
a[1] = 1
a[2] = 2
a[3] = 3
a[4] = 4
a[5] = 5

a[0] = 1
a[1] = 2
a[2] = 3
a[3] = 4
请按任意键继续. . .
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值