当前位置: 首页 > wzjs >正文

公司网站asp后台维护如何海外网站建设

公司网站asp后台维护,如何海外网站建设,合肥建设有限公司,珠海网站建设熊掌号前引: 在C标准模板库的体系架构中,栈(stack)与队列(queue)作为典型的容器适配器,通过封装底层序列容器实现了特定数据结构的抽象层。本文以C17标准为基准,深入解析其模板参数推导机制、适配器模式下的接口约束,以及迭代…

前引: 在C++标准模板库的体系架构中,栈(stack)与队列(queue)作为典型的容器适配器,通过封装底层序列容器实现了特定数据结构的抽象层。本文以C++17标准为基准,深入解析其模板参数推导机制、适配器模式下的接口约束,以及迭代器失效等关键技术细节。通过对比dequelist作为底层容器的性能差异,探讨如何根据应用场景选择最优实现策略。文章将结合操作系统任务调度、编译器语法分析等典型案例,展示如何通过STL接口实现线程安全的并发数据结构和高效内存管理方案!

目录

Stack

介绍

栈的实例化

检测stack是否为空

获取栈元素个数

获取栈顶元素

压栈

出栈

queue

介绍

队列的实例化

检测队列是否为空

获取队列元素个数

获取队头元素

获取队尾元素

入队列

出队头元素

deque

介绍

deque的实例化

检测deque是否为空

获取元素个数

获取第一个元素

获取最后一个元素

入deque

两端插入与删除元素


Stack

介绍

stack是一种容器适配器,专门用在具有后进先出操作的上下文环境中!

栈(Stack):只允许在一端进行插入或者删除的线性表。栈只支持在一端进行插入和删除操作

栈顶(Top):线性表允许进行插入和删除的那一端

栈底(Bottom):固定的,不允许进行插入和删除的另一端

空栈:不含任何元素的空表

压栈(Push):数据的插入也叫压栈(压栈、进栈、入栈都是一个意思)

例如:

在C++STL容器中,为我们提供了 Stack 的接口函数,与 list、Vector、string类似,直接实例化使用即可,下面我们来学习 Stack 的常用接口

栈的实例化

栈的元素支持内置类型(int、char、double......)也支持自定义类型,这里以 int 类型为例:

//实例化
stack<int> V;

遵循:stack<类型> 变量名

检测stack是否为空

如果是当前的栈为空返回非0;不为空返回0

V.empty()

获取栈元素个数

计算当前栈的元素个数,并返回

V.size();

获取栈顶元素

返回当前栈顶元素的引用

V。top();

压栈

将元素存进栈中

V.push(val);

出栈

弹出栈尾元素,注意没有返回值

V.pop();

queue

介绍

队列的满足先进先出(First-In-First-Out,FIFO),它可以在一端插入另一端删除,新元素被插入到队列的末尾(也就是队尾),元素只能在队列的前端(队首)被删除。队列由三个结构组成:

队头:允许删除的一端,又称队首

队尾:允许插入的一端()

队列长度:即队列中的元素数量

队列的实例化

遵循:queue<类型> 变量名 

queue<int> V;
检测队列是否为空

队列为空返回 true;不为空返回 false

V.empty();

获取队列元素个数
V.size();

获取队头元素

队头就是尾端,出元素的那端,返回尾端元素的引用

V.front();

获取队尾元素

队尾就是头端,进元素的那端,返回头端元素的引用

V.back();

入队列

将元素插入到队列

V.push();

出队头元素

满足先进先出,将先进的元素出队列

V.pop();

deque

介绍

deque是一种动态数组。它可以在两端快速插入和删除元素,同时提供了接近常数时间的随机访问。与vector不同,deque不是将所有元素连续存储,而是将元素存储在一系列固定大小的数组中,并通过一个中央控制结构(通常是一个数组)来管理这些数组的指针

​分段连续存储​:deque内部由多个块组成,每个块是一个固定大小的数组(具体大小由实现定义)这些块在逻辑上连续,但物理内存中不一定连续

​中央控制结构(映射器)​​:一个指针数组(或其他结构),每个指针指向一个数据块。当需要增加新的块时,就在这个指针数组中添加新的指针。这个数组本身可以动态增长,通常从中间开始使用,以便两端扩展

随机访问​:虽然元素在物理上不连续,但可以通过计算快速定位到某个元素的位置。访问一个元素需要先确定它在哪个数据块中,然后在该数据块内索引。这个过程是常数时间复杂度

双端高效操作​:在deque的首尾添加或删除元素非常高效,因为只需要修改中央控制数组的指针,并可能在需要时分配新的块

中间操作效率低​:在中间插入或删除元素需要移动元素,时间复杂度为O(n)

deque的实例化
//实例化
deque<int> V;
检测deque是否为空

为空返回 true;不为空返回 false

获取元素个数
V.size();

获取第一个元素

与 queue 的  front 访问特点很像 

V.front();

获取最后一个元素

与 queue 的  back 访问特点很像  

V。back();

入deque
V.push_back();

两端插入与删除元素
V.push_back(val);  //尾部插入元素
V.pop_back();       //尾部删除元素V.push_front(val); //头部插入元素
V.pop_front();      //头部删除元素

注意:也可以在中间插入/删除元素,不过很低效,一般不会使用 


文章转载自:

http://3tbftjSv.ydqzh.cn
http://S8Hu7pT8.ydqzh.cn
http://Y1jGmkTh.ydqzh.cn
http://k5tLu0NN.ydqzh.cn
http://slXjVGsr.ydqzh.cn
http://WD0t32Gh.ydqzh.cn
http://WXF2w4ve.ydqzh.cn
http://8QgWAXvz.ydqzh.cn
http://b0HOZlvb.ydqzh.cn
http://uvKg4wg9.ydqzh.cn
http://GUsnlWgW.ydqzh.cn
http://wAOnYYSo.ydqzh.cn
http://Q5vBNaTY.ydqzh.cn
http://vzJ8hbNr.ydqzh.cn
http://njX4IcUW.ydqzh.cn
http://93XZpd8z.ydqzh.cn
http://pWKIePkT.ydqzh.cn
http://H3d09t9K.ydqzh.cn
http://Lf5ATy6t.ydqzh.cn
http://sdCMWx36.ydqzh.cn
http://hafhrUNS.ydqzh.cn
http://wIW8IEeX.ydqzh.cn
http://NlUvvOXY.ydqzh.cn
http://BNK3I1Kd.ydqzh.cn
http://CsrMxNjh.ydqzh.cn
http://0ZSEzypV.ydqzh.cn
http://sSkiQ5ay.ydqzh.cn
http://BR1Rl7HN.ydqzh.cn
http://PWqfQiX5.ydqzh.cn
http://MulAxbuu.ydqzh.cn
http://www.dtcms.com/wzjs/651432.html

相关文章:

  • 网站推广方法是什么绵阳住房和城市建设局网站官网
  • 鄂州网站开发怎样让百度快速收录网站
  • 站长工具seo客户端餐饮如何做网络营销
  • dz增加网站标签外贸网站制作时间及费用
  • 廊坊网页搜索排名提升seo搜索引擎优化费用
  • 优化核心系列网站网站专栏的作用
  • 创意网站案例开一家网店
  • 手机网站智能建站绍兴以往网站招工做
  • 做网站找不到客户网络销售网站
  • 如何仿做网站网站内容布局
  • 长治一般做一个网站需要多少钱p2p网站建设规划
  • 做淘口令网站网站做二维码吗
  • 企业网站怎么搜索优化wordpress 通讯录插件
  • 品牌网站建设切入点计科专业毕设做网站
  • 网站维护花费网站建设项目实训报告书
  • 阿里云网站托管网站开发好还要空间吗
  • 做装修公司网站费用涂鸦智能深圳分公司
  • 劳务输送网站建设方案2019为网站网站做代理被判缓刑
  • 泉州外贸网站建设都有哪些公司乐趣做网站
  • 一级a做爰精免费网站玉林住房和城乡建设局网站官网
  • 有的网站显示正在建设中如何制作视频
  • 织梦网站建设实训总结网店名字创意
  • 哪些公司做DZ网站维护学交互设计网站
  • 营销型网站建设怎么做怎样用jsp做网站登录
  • 电脑技术学习网站wordpress 子域名
  • 网站建设图片设置app开发公司的管理体系
  • 网站策划知识做玩网站怎么上传图片
  • 做网站怎么防止被黑西部数码网站模板
  • 网站建设者属于广告经营者吗邢台网站建设服务周到
  • 四川外国语大学网站建设平安好车主app下载官方网站下载