二叉平衡树
http://blog.youkuaiyun.com/waltonhuang/article/details/51966130
思路
最简单的还是修改一下depth的定义,不平衡时返回-1。
边缘条件
root == NULL的时候返回0。
时间复杂度,空间复杂度
由于要遍历所有节点,时间复杂度为O(n)。
递归的空间复杂度为O(n)。
遍历顺序
采用后序遍历。
MySQL
聚簇索引(Cluster Index), 非聚簇索引(Non-Cluster Index)
http://bbs.chinaunix.net/thread-3639012-1-1.html
http://kb.cnblogs.com/page/44125/
聚簇索引的顺序就是物理存储的顺序,因此聚簇索引只有一个。聚簇索引是一种数据的存储方式。
非聚簇索引可以有多个。
InnoDB支持聚簇索引。使用B-tree来实现聚簇索引。叶子页存放行的全部信息。节点页只包含索引列。
非聚簇索引(二级索引)需要两级索引查找。叶子页存的不是行的信息,而是行的主键,查找的时候先找到主键,再拿着这个主键到聚簇索引去查找行信息。
主键,非主键
主键是聚簇索引,非主键是非聚簇索引。
隔离机制,加锁机制
http://blog.jobbole.com/100349/?from=timeline&isappinstalled=0
http://blog.youkuaiyun.com/waltonhuang/article/details/52105440
Python
Tornado
异步非阻塞
用了MySQLdb,阻塞?
GIL锁
HTTP协议
301
代表永久性转移(Permanently Moved)
302
代表暂时性转移(Temporarily Moved )
401
未经授权(Unauthorized)
403
禁止访问(Forbidden)