1. redis事务 redis是单线程来处理所有client请求的。 multi命令:将命令放入队列中,直到遇到exec命令,再开始执行队列中的命令。 结果打包返回。 事务中的写操作不能依赖事务中的读操作。 事务中的一个命令失败,并不回滚其他命令。 discard命令:来取消事务。 CAS(che...
分类:
其他好文 时间:
2015-04-13 20:26:40
阅读次数:
135
栈s1和栈s2,栈s1专门为入队,栈s2专门为出队。入队:当s1和s2都为空时,直接入队s1。当s1为空,s2不为空时,把s2的元素都倒回s1,然后再入队s1出队:当s2不为空时,直接出队s2当s2为空且s1不为空时,把s1的元素都倒进s2,然后出队s2代码实现如下:#include #includ...
分类:
编程语言 时间:
2015-04-12 09:07:37
阅读次数:
156
思路:队列其实也是一个链表,只是队列还有两个特殊的结点,一个指向队头,一个指向队尾。先设计数据结构,如下typedef struct student * PNode;typedef struct linkqueue * Pqueue;typedef struct student{ int da...
分类:
其他好文 时间:
2015-04-11 20:47:36
阅读次数:
104
#includeusing namespace std;#define Maxsize 100class Qune{public: int data[Maxsize]; int front; int rear;};void Qinsert(Qune&A,int x); //入队int Qdelet....
分类:
编程语言 时间:
2015-04-10 21:51:12
阅读次数:
183
求一棵二叉树的最低子树的高度 思路:用队列实现广度优先搜索即可,将每一层的节点放入队列,然后弹出时将下一层节点放入,遇到叶子节点时即返回当前的高度 class Solution {public: int minDepth(TreeNode *root) { if (!root) return 0; ...
分类:
其他好文 时间:
2015-04-09 21:42:15
阅读次数:
105
思路还是比较简单的:只需要求出每个点到出口的最近距离,然后在去其中的最大值作为答案。这个题目麻烦在建图,我建图的时候是将每个点的4个方向的情况都处理出来,然后再进行bfs。其实也可以直接处理出相关点的连通性。然后就是这个题目有两个出口,但是我们只需要将他们一次入队,就可以求出每个点到出口的最近距离了,而不用进行两次bfs(其实也可以加一个源点连接着两个点,可以达到同样的效果)。代码如下:/*
ID:...
分类:
其他好文 时间:
2015-04-09 19:56:12
阅读次数:
210
//用两个栈实现队列的功能//假设有两个栈s1与s2,则s1保存刚刚入队的元素,若需出队且s2为空,则将s1所有元素压入s2(此时s2中元素顺序为元素入队顺序),然后取出s2栈顶即可,若s2非空(此时s2中元素为s1之前压入,其栈顶就是最早入队的元素),则直接取出s2的栈顶。template cla...
分类:
其他好文 时间:
2015-04-06 23:06:56
阅读次数:
155
二叉树的层序遍历思路一:利用队列,将每一层节点放入队列,各层节点之间加入NULL隔开。 1 /** 2 * Definition for binary tree 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; 6 ...
分类:
其他好文 时间:
2015-04-04 19:44:40
阅读次数:
110
先根,后子树;先左子树,后右子树二叉树的根节点 a 入队a 的子树,根节点 b 和 c 分别入队然后 b 的子树的根节点入队(为空)c 的子树的根节点入队d 的子树的根节点入队(为空)e 的子树的根节点入队f 的子树的根节点入队(为空)g的子树的根节点入队(为空)结束层序遍历,整个过程就是一层层的遍...
分类:
其他好文 时间:
2015-04-03 19:12:35
阅读次数:
181
题意 你有两个容积分别为a,b杯子 你每次可以将某个杯子中的水倒满或者倒掉或者倒到另一个杯子 问能否通过这两个杯子量出c容量的水
和上一个倒可乐问题类似 只是这个操作更多了点 将两个杯子中各含有的水作为状态 每出队列一个状态 将所有可能到达的状态入队 直到有一个杯子里面水的体积为c 打印路径直接递归就行了
#include
#include
#include
usin...
分类:
其他好文 时间:
2015-04-02 18:57:51
阅读次数:
173