数据结构
文章平均质量分 59
刘嘉威
hello world
展开
-
MySql与Oracle的差别
一、并发性 并发性是oltp数据库最重要的特性,但并发涉及到资源的获取、共享与锁定。 mysql:mysql以表级锁为主,对资源锁定的粒度很大,如果一个session对一个表加锁时间过长,会让其他session无法更新此表中的数据。虽然InnoDB引擎的表可以用行级锁,但这个行级锁的机制依赖于表的索引,如果表没有索引,或者sql语句没有使用索引,那么仍然使用表级锁。原创 2016-03-03 17:24:40 · 2385 阅读 · 1 评论 -
二叉查找树
1:定义 查找树的定义非常简单,一句话就是左孩子比父节点小,右孩子比父节点大,还有一个特性就是”中序遍历“可以让结点有序。2:树节点为了具有通用性,我们定义成泛型模板,在每个结点中增加一个”数据附加域”。 1 /// 2 /// 二叉树节点 3 /// 4 /// 5 /// 6 publ转载 2016-03-04 09:18:06 · 314 阅读 · 0 评论 -
平衡二叉树
1:定义 父节点的左子树和右子树的高度之差不能大于1,也就是说不能高过1层,否则该树就失衡了,此时就要旋转节点,在编码时,我们可以记录当前节点的高度,比如空节点是-1,叶子节点是0,非叶子节点的height往根节点递增,比如在下图中我们认为树的高度为h=2。 1 #region 平衡二叉树节点 2 /// 3 /// 平衡二转载 2016-03-04 09:21:57 · 306 阅读 · 0 评论 -
Treap树
1:定义 1 #region Treap树节点 2 /// 3 /// Treap树 4 /// 5 /// 6 /// 7 public class TreapNode 8 { 9 /// 10 /// 节点元素11 /// 12转载 2016-03-04 09:24:12 · 308 阅读 · 0 评论 -
伸展树
1:思想 伸展树的原理就是这样的一个”八二原则”,比如我要查询树中的“节点7”,如果我们是AVL的思路,每次都查询“节点7”,那么当这棵树中的节点越来越多的情况下就会呈现下旋,所以复杂度只会递增,伸展树的想法就是在第一次查询时树里面会经过一阵痉挛把“节点7”顶成“根节点”,操作类似AVL的双旋转,比如下图:当我们再次查询同样的”数字7“时,直接在根节点转载 2016-03-04 09:25:53 · 367 阅读 · 0 评论 -
Trie树
一:概念 下面我们有and,as,at,cn,com这些关键词,那么如何构建trie树呢?从上面的图中,我们或多或少的可以发现一些好玩的特性。 第一:根节点不包含字符,除根节点外的每一个子节点都包含一个字符。 第二:从根节点到某一节点,路径上经过的字符连接起来,就是该节点对应的字符串。 第三:每个单词的公共前缀作转载 2016-03-04 09:27:05 · 303 阅读 · 0 评论