deque 这个STL 的操作

本文介绍了C++标准模板库(STL)中的deque容器,它支持高效地在队列前端和后端进行插入和删除,以及创建、操作、遍历和清理deque的基本方法,适合频繁需要在序列两端操作的场景。
摘要由CSDN通过智能技术生成

deque(双端队列)是C++标准模板库(STL)中的一种容器,支持在队列的前端和后端高效地插入和删除元素。与vector相比,deque允许高效地在序列的前端进行插入和删除操作,而vector仅支持在尾部高效地添加和删除元素。deque是一个动态数组,能够根据需要自动重新分配存储空间。

下面列出了deque的一些常用操作:

引入头文件

使用deque前,需要包含其头文件:

#include <deque>

创建deque

创建一个deque容器:

std::deque<int> d; // 创建一个空的int类型deque

添加元素

  • 在末尾添加元素:

    d.push_back(10);
    
  • 在开头添加元素:

    d.push_front(5);
    

访问元素

  • 访问第一个元素:

    int first = d.front();
    
  • 访问最后一个元素:

    int last = d.back();
    
  • 通过索引访问元素(与数组相似):

    int element = d[0]; // 访问第一个元素
    

删除元素

  • 删除末尾元素:

    d.pop_back();
    
  • 删除开头元素:

    d.pop_front();
    

大小和容量

  • 检查deque是否为空:

    bool isEmpty = d.empty();
    
  • 获取deque的元素数量:

    size_t size = d.size();
    

迭代器

deque支持迭代器,可以用来遍历容器中的元素:

for (auto it = d.begin(); it != d.end(); ++it) {
    std::cout << *it << ' ';
}

清空deque

清除deque中的所有元素:

d.clear();

deque提供了灵活的数据结构,使得在序列的两端操作变得非常高效,适用于需要频繁插入和删除的场景。

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值