今天把这两货放在一起来看看,因为Redis是把数据都放在了内存里,所以涉及到内存的占用,基本就是能省则省,对于一些小容量的redis对象来说,redis底层会选择一些压缩数据...
除了保证操作的原子性以外,同步还可以保证变量在不同线程之间的内存可见性。原子性和可见性共同构成了同步的两个核心要素。第三章主要讲述如何在线程之间安全的发布和共享变量。 首先可...
线程是CPU调度的最小单位,与进程不同,它们拥有相同的地址和fd描述符,操作系统的基本调度单元是线程。进程为线程提供了独立的地址(通过vm)和独立的资源,文件句柄,是实体单元...
这是一道DP题,使用DP[i]来表示以I为结尾的子串的最大长度。转移关系式式DP[i+1]=Math.min(DP[i]+1,i-j),j是距离I+1最近的相同结点的位置。由...
BST可以考虑中序遍历,如果合法,得到的结果总是递增的,我们通过对IN-ORDER的结果进行依次检查来判断其是否是合法的。
Given an integer n, return the number of trailing zeroes in n!. 这是一道数学题,把N!写成乘数。那么零的产生是...
一开始用了list稍微有点慢。改用了数组好多了。这里我们是使用三个指针来惰性的计算下一个值,取出其中最小的值加入到数组,注意值可能会有重复,所以我们要对于得到的三个值都进行判...
由于障碍的出现,需要改动一下代码。需要注意的是在初始化第一行时如果前面出现障碍,后面必须都是0
一个比较naive的版本,使用的空间是O(MxN), 如果注意到表达式dp[i][j]=dp[i-1,j]+dp[i,j-1];只和上一次的状态和这一次前面的状态有关,那么可...
Given an array nums containing n + 1 integers where each integer is between 1 and n (in...
递归 ,case有点多 别写错
同样的遍历过程,可以考虑用一个Stack保存先序遍历的结果,随后将stack内的值逐个POP。这里要求先左再右,如果在原有的遍历过程中仍然是以左半部分为优先的话,在pop后会...
和中序遍历的方式类似,只是改变了添加值的时机,在最开始的时候。
二叉树的中序遍历,可以是经典的递归写法。能写成递归就可以写成迭代,但是迭代的话需要保存一下之前的结点。比如对root来说,这个结点在我访问完左半部分之后才需要访问,于是我们可...