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

太仓建设工程网站本机号码一键登录

太仓建设工程网站,本机号码一键登录,pc网站 手机网站 微信公众平台,自学网课程设置文章目录 queuequeue的介绍queue的使用 priority_queuepriority_queue介绍priority_queue使用 queue queue的介绍 队列是一种容器适配器#xff0c;专门用于上下文先进先出的操作中。队列的特性是先进先出#xff0c;从容器的一端插入#xff0c;另一端提取元素。   队列… 文章目录 queuequeue的介绍queue的使用 priority_queuepriority_queue介绍priority_queue使用 queue queue的介绍 队列是一种容器适配器专门用于上下文先进先出的操作中。队列的特性是先进先出从容器的一端插入另一端提取元素。   队列作为容器适配器实现容器适配器即将特定容器类封装作为其底层容器类queue提供一组特定的成员函数来访问其元素。元素从队尾入队列从队头出队列。   底层容器可以是标准容器类模板之一也可以是其他专门设计的容器类。该底层容器应至少支持以下操作empty检测队列是否为空、size返回队列中有效元素的个数、front返回队头元素的引用、back返回队尾元素的引用、push_back在队列尾部插入元素、pop_front在队列头部删除元素。   标准容器类deque和list满足了这些要求。默认请情况下如果没有为queue实例化指定底层容器类则默认使用标准容器deque。 queue的使用 函数声明接口说明queue()构造空的队列empty()检测队列是否为空为空就返回true否则就返回falsesize()返回队列中有效元素的个数front()返回队头元素的引用back()返回队尾元素的引用push()在队尾将元素val插入队列pop()将队头元素弹出队列 int main() {dequeint mydeck(3, 100);listint mylist(2, 200);queueint first;queueint second(mydeck);queueint, listint third;queueint, listint fourth(mylist);return 0; }int main() {queueint myqueue;int sum(0);cout myqueue.empty() endl;for (int i 1; i 10; i)myqueue.push(i);cout myqueue.empty() endl;while (!myqueue.empty()){sum myqueue.front();myqueue.pop();}cout total: sum endl;return 0; }int main() {queueint myints;cout 0.size: myints.size() endl;for (int i 0; i 5; i)myints.push(i);cout 1.size: myints.size() endl;myints.pop();cout 2.size: myints.size() endl;return 0; }int main() {queueint myqueue;myqueue.push(10);myqueue.push(20);myqueue.front() - myqueue.back();cout myqueue.front(): myqueue.front() endl;myqueue.back() myqueue.front();cout myqueue.back(): myqueue.back() endl;return 0; }在C11中stack的成员函数也新增了emplace和swap。 priority_queue priority_queue介绍 优先队列是一种容器适配器根绝严格的弱排序标准它的第一个元素总是它所包含的元素中最大的。可以当做堆来理解实际上和堆基本一致。在堆中可以随时插入元素并且智能检索最大的堆元素优先队列中位于顶部的元素。   优先队列被实现为容器适配器容器适配器即将特定容器类封装作为其底层容器类。priority_queue提供一组特定的成员函数来访问其元素。元素从特定容器的尾部被抛出其称为有限队列的顶部。   底层容器可以是任何标准容器类模板也可以是其他特定设计的容器类。容器应该可以通过迭代器访问并支持以下操作empty检测容器是否为空、size返回容器中有效元素的个数、front返回容器中第一个元素的引用、push_back在容器尾部插入元素、pop_back删除容器尾部的元素。需要注意的是这些操作是priority_queue必须具备的并非是只能有这些操作。   标准容器类vector和deque满足这些需求。默认情况下如果没有为特定的priority_queue类实例化指定容器类则使用vector。   需要支持随机访问迭代器以便始终在内部保持堆结构。容器适配器通过在需要时自动调用算法函数make_heap、push_heap和pop_heap来自动完成此操作。   优先级队列默认使用vector作为其底层存储数据的容器在vector上又使用了堆算法将vector中元素构造成堆的结构因此priority_queue就是堆所有需要用到堆的地方都可以考虑使用priority_queue。默认情况下priority_queue是大堆。 priority_queue使用 函数声明接口说明priority_queue()/priority_queue(first, last)构造一个优先级队列empty()检测优先级队列是否为空为空就返回true否则就返回falsesize()返回优先队列中有效元素的个数top()返回优先级队列中最大最小元素即堆顶元素push()在优先级队列中插入元素pop()删除优先级队列中的最大最小元素即堆顶元素 class mycomparison {bool reverse; public:mycomparison(const bool revparam false){reverse revparam;}bool operator() (const int lhs, const int rhs) const{if (reverse)return (lhs rhs);elsereturn (lhs rhs);} };int main() {int myints[] { 10, 60, 50, 20 };priority_queueint first;priority_queueint second(myints, myints 4);priority_queueint, vectorint, greaterint third(myints, myints 4);typedef priority_queueint, vectorint, mycomparison mypq_type;mypq_type fourth;mypq_type fifth(mycomparison(true));return 0; }int main() {priority_queueint mypq;int sum(0);for (int i 0; i 10; i)mypq.push(i);cout mypq size: mypq.size() endl;cout mypq top: mypq.top() endl;while (!mypq.empty()){sum mypq.top();mypq.pop();}cout total: sum endl;return 0; }
http://www.dnsts.com.cn/news/208455.html

相关文章:

  • 网站建设结项报告网站的建设目标是什么
  • 用服务器建立网站吗凡科网站怎么做
  • 在线借贷网站建设网站开发的背景是指什么
  • 免费网站怎么赚钱wordpress翻译文件
  • 佛山网站建设咨询wordpress主题里加广告
  • 淘宝客网站建设难度大吗如何提高网站的点击率
  • 建设银行企业网上银行网站wordpress上传漏洞拿shell
  • 响应式网站设计思路触摸网站手机
  • 网站建设与管理 试题做节约用水海报的网站
  • 网站开发工程师是什么意思宁波网站建设zj95
  • 云和建设局网站上海圣品科技 做网站
  • 网站推广成本做任务能赚钱的网站有哪些
  • 长基建站wordpress怎么自动生成内链
  • 洛可可设计公司企业文化网站网络推广优化
  • 使用国外空间的网站wordpress禁止修订
  • 建设学分银行网站策划书邢台seo价格
  • 网站建设相关资料整理的重要性wordpress伪静态插件
  • 福田产品设计南宁seo渠道哪家好
  • wordpress获取站点链接兰州网站建设实验总结
  • 如何建企业网站新手怎么学做电商
  • 网站设计公司 国际学编程要什么学历
  • 怎么做创业网站网站开发立项报告
  • 电子商务网站建设前期规划方案建网站义乌
  • 云主机网站网站怎么弄实名制认证
  • 济宁网站建设服务怎么做关注网站
  • html 门户网站东莞高端做网站公司
  • 工程建设资料员报名网站中国海关进出口信息查询
  • 免费app下载seo哪里可以学
  • 遵义网站建设公司招聘自助建站免费网站
  • 游戏发卡中心网站源码模版网站和语言网站