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

网站和后台建设站群管理

网站和后台建设,站群管理,搭建外文网站,网站制作工作室stack 与 queuestackSTL 容器中 stack 的使用模拟实现 stackqueueSTL 容器中 queue 的使用模拟实现 queuestack 在数据结构中#xff0c;我们了解到#xff0c;stack 栈结构#xff0c;是一种先进后出的结构#xff0c;并且我们是使用顺序表来进行实现栈的操作的。 STL 容… stack 与 queuestackSTL 容器中 stack 的使用模拟实现 stackqueueSTL 容器中 queue 的使用模拟实现 queuestack 在数据结构中我们了解到stack 栈结构是一种先进后出的结构并且我们是使用顺序表来进行实现栈的操作的。 STL 容器中 stack 的使用 C STL 中stack的基本操作有 代码测试练习 void test0() {stackint s;s.push(1);s.push(2);s.push(3);s.push(4);cout size() s.size() endl;cout top s.top() endl;if (s.empty())cout s is empty! endl;elsecout s is not empty! endl;s.pop();s.pop();s.pop();cout size() s.size() endl;cout top s.top() endl;if (s.empty())cout s is empty! endl;elsecout s is not empty! endl;}模拟实现 stack 由于栈结构是“后进先出”的因此在进行栈模拟时候我们可以使用顺序结构来进行之前学习到 STL 容器中的 vector 容器是顺序结构的我们可以直接复用 namespace xx { //定义自己的命名空间templateclass T,class Containerstd::vectorT //定义模板类型class stack {public:stcak() //构造方法不需要写因为 Container 被定义为 vector 容器会自动进行构造方法的调用 {}void push(const T val){c.push_back(val); //使用 vector 容器的尾插方法}void pop(){if (empty())return ;c.pop_back(); //出队使用 vector 容器中的尾删操作-----------后进先出原则}T top(){return c.back(); //获取栈顶元素也就是最后一个入栈的元素------即复用 vector 容器中获取最后一个元素的方法}const T top()const{return c.back();}size_T size()const{return c.size(); //返回 vector 容器的大小}bool empty()const{return c.empty(); //判断 vector 容器是否为空}private:Container c; //定义 Container 为 vector 容器};}代码测试 queue 在数据结构中我们知道 queue 队列是一种先进先出的结构。 STL 容器中 queue 的使用 C STL 中queue的基本操作有 代码测试练习 void test1() {queueint q;q.push(1);q.push(2);q.push(3);q.push(4);q.push(5);cout size() q.size() endl;cout front q.front() endl;cout back q.back() endl;q.pop();q.pop();q.pop();cout size() q.size() endl;cout front q.front() endl;cout back q.back() endl;if (q.empty())cout q is empty! endl;elsecout q is not empty! endl;q.pop();q.pop();if (q.empty())cout q is empty! endl;elsecout q is not empty! endl;}模拟实现 queue 队列是属于“先进先出”的结构在队尾进行元素的插入队头进行元素的删除操作因此为了避免头删而导致大量元素的移动操作我们避免使用顺序结构来实现队列故可以复用 list 链表结构来实现 namespace xx { //自定义命名空间templateclass T,class Containerstd::listT //定义模板类型class queue {public:queue() //构造方法会直接使用 list 方法的构造{}void push(const T val){//尾插q.push_back(val); //尾插------链表的尾插操作}void pop(){//头删if (empty())return; q.pop_front(); //队头出队----------链表的头删操作}T front(){return q.front(); //获取队头元素---------链表的首节点信息}const T front()const{return q.front(); }T back(){return q.back(); //获取队尾元素----------链表的尾节点信息}const T back()const{return q.back();}size_t size()const{return q.size(); //队中元素个数 -------- 链表中节点个数}bool empty()const{return q.empty(); //队列是否为空 ----------- 判断链表是否为空}private:Container q;}; } 代码测试 ps: 代码需要多练多理解今天的分享相对于来说还是比较简单的需要详细的 stack 和 queue 的实现可以参考数据结构中的讲解哦 — 添加链接描述 ~今天的学习就到这里啦期待周末考试一切顺心鸭
http://www.w-s-a.com/news/610075/

相关文章:

  • 网站设计基本结构wap自助建论坛网站
  • 专业番禺网站建设爱做网站外国
  • 深圳罗湖网站设计公司价格制作网站的公司办什么营业执照
  • 长清网站建设价格群辉NAS搭建wordpress
  • 变更股东怎样在工商网站做公示网站建设和网站优化哪个更重要
  • 西安手机网站python网站开发效率
  • 深圳建站的公司羽毛球赛事2022直播
  • j2ee网站开发搜索推广的流程
  • 网站目录结构图虚拟主机如何安装WordPress
  • 信产部网站备案保定软件开发网站制作
  • 东莞网站设计定做东莞网站建设最牛
  • 网站开发的软件天猫的网站导航怎么做的
  • 做链接哪个网站好网站建设平台方案设计
  • 资质升级业绩备案在哪个网站做网站建设方案费用预算
  • 做网站找哪个平台好wordpress 3.9 性能
  • 大兴模版网站建设公司企业网站备案案例
  • h5建站是什么wordpress客户端 接口
  • 济南自适应网站建设制作软件下载
  • 望都网站建设抖音广告投放收费标准
  • 网站制作软件排行榜上海市网站建设公司58
  • 什么是网站风格中国工商网企业查询官网
  • 专业建设专题网站wordpress lnmp wamp
  • 环保网站 下载页网站
  • 开源小程序模板江门关键词优化排名
  • 网站开发 知乎房地产型网站建设
  • 买完域名网站怎么设计wordpress 纯代码
  • 公司网站怎么做百度竞价宁波网络公司哪家好
  • 河西网站建设制作微信分销系统多层
  • 网站制作完成后应进入什么阶段石家庄网站建设找哪家好
  • 南通外贸网站推广自在源码网官网