1 思路:自己实现一个栈,其中成员为标准库中的栈,一个存放全部的元素,一个存放最小元素,一个存放最大元素。使用自己实现的栈来实现一个求最大值最小值的队列,其中包含两个成员,一个作为出队的栈,一个作为入队的栈。2 C++实现代码:#include#include#includeusing namesp...
分类:
其他好文 时间:
2015-04-26 13:41:57
阅读次数:
108
1. 线程使用场景(1)流水线方式。根据业务特点,将一个流程的处理分割成多个线程,形成流水线的处理方式。产生的结果:延长单一流程的处理时间,提高系统整体的吞吐能力。(2)线程池方式。针对处理时间比较长且没有内蕴状态的线程,使用线程池方式分流消息,加快对线程消息的处理,避免其成为系统瓶颈。线程使用的关...
分类:
编程语言 时间:
2015-04-25 00:12:24
阅读次数:
260
使用循环队列实现的Deque接口,号称:
-当stack比stack快
-当queue比linkedlist快Iterator是Fail fast的,在创建时保存tail位置,next时检查tail是否改变,如果改变则exception。满篇风骚的位操作
-寻找大于numElements的最小二的整次幂:initialCapacity = numElements;
in...
分类:
移动开发 时间:
2015-04-21 13:07:31
阅读次数:
192
whatMSMQ(Microsoft Message Queue),微软消息队列,用于应用程序之间相互通信的一种异步传输模式。应用程序可以分布在同台机器上,也可以分布于互联的网络中的任意位置。基本原理:消息发送者把要发送的消息放入容器,也就是Message(消息),然后保存到系统公用空间的消息队列中...
分类:
其他好文 时间:
2015-04-16 21:14:30
阅读次数:
4044
templateclass QStack{public: QStack(){} ~QStack(){} void push(T const &); T pop();private: Queue Q1,Q2;};templatevoid QStack::push(T const &e){ //入...
分类:
其他好文 时间:
2015-04-16 19:38:29
阅读次数:
148
数组实现双端队列的时候注意区别判断上溢和下溢。用两个栈实现队列,就相当于把两个栈底靠在一起(背靠背),一个栈用来出队列,一个栈用来进队列。这个队列的操作时间大部分时候是常数时间,除了出列的栈为空,需要把进列的栈全部转移过去,再出列。Back()操作和Pop()操作类似,也是这样。而两个队列实现栈,队...
分类:
编程语言 时间:
2015-04-11 20:41:49
阅读次数:
254
求一棵二叉树的最低子树的高度 思路:用队列实现广度优先搜索即可,将每一层的节点放入队列,然后弹出时将下一层节点放入,遇到叶子节点时即返回当前的高度 class Solution {public: int minDepth(TreeNode *root) { if (!root) return 0; ...
分类:
其他好文 时间:
2015-04-09 21:42:15
阅读次数:
105
这个方法既节约了空间又节约了时间:#include"iostream"#include"queue"#include"string.h"#include"stdio.h"#include"cmath"using namespace std;int main(){ int i,j,s,t; ...
分类:
其他好文 时间:
2015-04-08 21:19:33
阅读次数:
116
BlockingQueue接口定义了包括两个附加功能的队列。这两个功能是:如果从空队列中取元素或者向满队列中增加元素,则进入等待状态。BlockinQueue接口中的方法pu(e)t和take()可以使其进入无限阻塞状态,可以用这两个方法实现生产者和消费者问题,比较简单。代码如下:package ....
分类:
其他好文 时间:
2015-04-07 18:59:38
阅读次数:
86
清明假期三天没出寝室的门,先是把独立的博客折腾好了。域名备案还没好。域名是ilovecpp.com,意为“我爱C++”,好羞涩,掩面,逃:)。话说cnblogs.com的界面好丑 。其余大部分时间就是折腾这个小项目了,Unix 内核函数各种结构、flags即使查man手册还是看的头大。所幸还是实.....
分类:
其他好文 时间:
2015-04-07 07:05:13
阅读次数:
175