2014 WAP第一个问题----实现一个不可改变的队列:

看似非常easy。。

其实,不同的版本号之间的效率差距可能是巨大的。。

甚至难以想象。

使用前STL图书馆queue我们进行了比较。大差异。

用上一篇文章的immutable stack 来实现 immutable queue.

事实上就是用两个栈实现队列,详细的思想能够參考 编程之美。。

注意:代码中析构函数那一段代码的目的主要是为了避免析构函数递归调用时递归深度太大。

通过将链表后序的节点的智能指针拷贝到局部的vector中。通过vector的析构函数自己主动调用成员的析构函数的规则来实现。。

可能有点绕,大家能够细致琢磨下面。。

附加题:

实现reverse操作(这个问题是说坑了不少学生的。其实很简单,Word可以得到)

最新文章

  1. IT运维监控解决方案介绍
  2. Abp集成Swagger的最佳实践
  3. asp.net mvc4 MvcMusicStore
  4. JQuery判断数组中是否包含某个元素$.inArray("元素字符串", 数组名称);
  5. Bete冲刺第六阶段
  6. BZOJ 1013 & 高斯消元
  7. MFC ADO连接Oracle12c数据库 客户端环境搭建
  8. The Top 10 Javascript MVC Frameworks Reviewed
  9. [Effective JavaScript 笔记]第22条:使用arguments创建可变参数的函数
  10. [转载]GMM的EM算法实现
  11. PHP无限极分类生成树方法
  12. linux修改密码
  13. 道破Redis的VM
  14. C#基础,目录
  15. SAP MM 公司间STO里交货单PGI之后自动触发内向交货单功能的实现
  16. 二维数组的最大子数组和 时间复杂度:O(n的四次方)
  17. LR回放https协议脚本失败:[GENERAL_MSG_CAT_SSL_ERROR]connect to host "XXX" failed:[10054] Connection reset by peer [MsgId:MERR-27780]
  18. 倒置输入的整数(C、Python)
  19. redis的入门篇---五种数据类型及基本操作
  20. 【瞎搞题】gym226123 L. For the Honest Election

热门文章

  1. UVA 11248 - Frequency Hopping(网络流量)
  2. response.setHeader各种使用方法
  3. UVA 11774 - Doom's Day(规律)
  4. unity3d中让物体显示和隐藏
  5. 流量计算-Jstorm提交Topology过程(下一个)
  6. 关于WCF的引用,添加服务和添加web服务的区别
  7. 【网络流量最大流量】poj3281Dining
  8. mysql 删除重复数据sql声明
  9. 初探swift语言的学习笔记五(线程)
  10. Html5 拖放上传图片