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

房地产市场信息系统网站手工做皮具国外的网站

房地产市场信息系统网站,手工做皮具国外的网站,襄阳seo技术,做游戏交易网站有哪些内容介绍完了list类的相关内容后#xff1a;C初阶#xff1a;适合新手的手撕list#xff08;模拟实现list#xff09; 接下来进入新的篇章#xff0c;stack和queue的介绍以及模拟#xff1a; 文章目录 1.stack的初步介绍2.stack的使用3.queue的初步介绍4.queue的使用5.容器适…介绍完了list类的相关内容后C初阶适合新手的手撕list模拟实现list 接下来进入新的篇章stack和queue的介绍以及模拟 文章目录 1.stack的初步介绍2.stack的使用3.queue的初步介绍4.queue的使用5.容器适配器5.1含义5.2STL标准库中stack和queue的底层结构 6.模拟stack和queue文件规划和一览6.1模拟stackstack.h6.2模拟queuequeue.h 1.stack的初步介绍 stack是一种容器适配器专门用在具有后进先出操作的上下文环境中其删除只能从容器的一端进行元素的插入与提取操作。 stack是作为容器适配器被实现的容器适配器即是对特定类封装作为其底层的容器并提供一组特定的成员函数来访问其元素将特定类作为其底层的元素特定容器的尾部(即栈顶)被压入和弹出。 stack的底层容器可以是任何标准的容器类模板或者一些其他特定的容器类这些容器类应该支持以下 操作 empty判空操作 back获取尾部元素操作 push_back尾部插入元素操作 pop_back尾部删除元素操作 标准容器vector、deque、list均符合这些需求默认情况下如果没有为stack指定特定的底层容器默认情况下使用deque。 2.stack的使用 函数说明stack()构造空的栈empty()检测stack是否为空size()返回stack中元素的个数top()返回栈顶元素的引用push()将元素val压入stack中pop()将stack中尾部的元素弹出 #includeiostream #includestack using namespace std;int main() {stackint st;//一个空栈st.push(1);st.push(2);st.push(3);//push进去3个while (!st.empty())//当st不空进循环{cout st.top() endl;//输出栈顶元素st.pop();//栈顶出栈}//遍历结束}3.queue的初步介绍 队列是一种容器适配器专门用于在FIFO上下文(先进先出)中操作其中从容器一端插入元素另一端提取元素。 队列作为容器适配器实现容器适配器即将特定容器类封装作为其底层容器类queue提供一组特定的成员函数来访问其元素。元素从队尾入队列从队头出队列。 底层容器可以是标准容器类模板之一也可以是其他专门设计的容器类。该底层容器应至少支持以下操作: empty检测队列是否为空size返回队列中有效元素的个数front返回队头元素的引用back返回队尾元素的引用push_back在队列尾部入队列pop_front在队列头部出队列 标准容器类deque和list满足了这些要求。默认情况下如果没有为queue实例化指定容器类则使用标准容器deque。 4.queue的使用 函数说明queue()构造空的队列empty()检测队列是否为空是返回true否则返回falsesize()返回队列中有效元素的个数front()返回队头元素的引用back()返回队尾元素的引用push()在队尾将元素val入队列pop()将队头元素出队列 #includeiostream #includequeue using namespace std;int main() {queueint q;//一个空队列q.push(1);q.push(2);q.push(3);//push进去3个while (!q.empty())//当q不空进循环{cout q.front() endl;//输出队头元素q.pop();//出队}//遍历结束return 0; }5.容器适配器 5.1含义 容器适配器是一种将现有的容器类型适配为不同接口的容器的工具。C标准库提供了三种主要的容器适配器栈stack、队列queue和优先队列priority_queue。这些适配器都是基于现有的序列容器如vector、deque或list实现的但提供了不同的接口和行为。 栈stack栈是一种后进先出LIFO的数据结构它只允许在栈顶进行插入和删除操作。在C中栈适配器基于deque或vector实现提供了push、pop、top等操作。队列queue队列是一种先进先出FIFO的数据结构它允许在队列的前端进行删除操作在队列的后端进行插入操作。在C中队列适配器也基于deque或list实现提供了push、pop、front、back等操作。优先队列priority_queue优先队列是一种特殊的队列它根据元素的优先级进行排序。在C中优先队列适配器基于vector实现提供了push、pop、top等操作。 今天先来模拟栈和队列。优先队列下次单独细讲 怎么理解“适配为不同接口的容器” 容器适配器上述三种提供的操作接口与底层容器的操作接口不同。虽然容器适配器底层使用了常见的序列容器如vector、deque或list来存储数据但是它们暴露的操作接口与这些底层容器不同。 举个例子让我们比较一下栈stack适配器和vector容器的接口 栈stack适配器的接口 push将元素压入栈顶pop弹出栈顶元素top访问栈顶元素 vector容器的接口 push_back在vector的末尾插入元素pop_back删除vector的末尾元素back访问vector的末尾元素 如你所见尽管栈适配器的底层容器可能是vector但它提供了与vector不同的操作接口。栈适配器隐藏了vector的细节只暴露了栈的相关操作使得我们可以更方便地使用栈这种数据结构。 5.2STL标准库中stack和queue的底层结构 虽然stack和queue中也可以存放元素但在STL中并没有将其划分在容器的行列而是将其称为容器适配器这是因为stack和队列只是对其他容器的接口进行了包装STL中stack和queue默认使用deque比如 6.模拟stack和queue 文件规划和一览 stack.h:用来实现stack queue.h:用来实现queue test.cpp:进行测试 6.1模拟stackstack.h #pragma oncenamespace MyStack {templateclass T, class Container dequeTclass stack{public://构造函数、析构函数之类的会去调用传过来的的类的void push(const T x){_con.push_back(x);}void pop(){_con.pop_front();}const T top(){return _con.front();}size_t size(){return _con.size();}bool empty(){return _con.empty();}private:Container _con;//封装这个类型}; }6.2模拟queuequeue.h #pragma oncenamespace MyQueue {templateclass T, class Container dequeTclass queue{public://构造函数、析构函数之类的会去调用传过来的的类的void push(const T x){_con.push_back(x);}void pop(){_con.pop_front();}const T front(){return _con.front();}const T back(){return _con.back();}size_t size(){return _con.size();}bool empty(){return _con.empty();}private:Container _con;//封装这个类型}; }好啦大家这次就到这里啦下次就带来优先级队列priority_queue的介绍和模拟。感谢大家
http://www.hkea.cn/news/14590653/

相关文章:

  • 做行业门户网站要投资多少钱设计师论坛
  • 淄川区建设局网站自己建设论坛网站
  • 室内设计网站免费模板网站建设要多少钱怎样
  • 网站广告推广公司开发网站的工具有哪些
  • 网站的备案信息pc网站怎么做适配
  • 门户定制网站建设公司公司logo注册商标流程 费用
  • 帮忙做网站的协议建查查官网
  • 怎么做frontpage网站word网站链接怎么做
  • 90设计网站如何接单百度软件中心下载
  • 东莞seo建站排名北京知名seo公司精准互联
  • 网站整体建设方案设计软件发展的四个阶段
  • 唐山模板建站系统广告营销行业
  • 大石桥做网站wordpress内存占用大
  • 枣阳做网站大连企业名录大全
  • 邯郸网站设计价格和什么人合作做游戏视频网站
  • 网站后台功能开发seo是怎么优化推广的
  • 网站开发要懂英文吗科技制作网站
  • 建立导购网站推动高质量发展为主题
  • 如皋网站设计公司业务管理系统
  • 做商城类网站空间怎么买网站模板大全官网
  • 网站搭建分站需要多少钱销售型网站建设
  • 国外唯美flash个人网站欣赏网站建设前提
  • 库尔勒网站建设推广自建网站 备案
  • 紫搜做网站邮箱域名和网站域名
  • 免费建站的平台我的网站百度搜不到
  • 冠辰网站什么网站专做店铺
  • 宿迁华夏建设集团网站15个平面设计图素材网站
  • 网站建设技巧饣金手指排名27网站首页没有收录
  • 西安专用网站建设wordpress全站加速
  • html5个性个人网站济南最好的网站制作公司