关于B+树数据结构 ①InnoDB存储引擎支持两种常见的索引。 一种是B+树,一种是哈希。 B+树中的B代表的意思不是二叉(binary),而是平衡(balance),因为B+树最早是从平衡二叉树演化来的,但是B+树又不是一个平衡二叉树。 同时,B+树索引并不能找到一个给定键值的具体行。B+树索引只 ...
分类:
数据库 时间:
2017-03-31 21:54:59
阅读次数:
215
冒泡排序思路:共比较n-1轮,每次比较相邻的两个数,将大数放在后面,经过第一轮比较后最后面的就会是最大的第二轮除了最后一个比较剩余的,第二轮会将第二大的数放在倒数第二位。直到最后。 插入排序数组分成两个部分,前半部分是拍好序的,每次取后半部分的第一个数据,依次和前半部分的每个数比较,如果小于向后移, ...
分类:
编程语言 时间:
2017-03-29 14:25:12
阅读次数:
188
问题:输入一棵二叉树,判断该二叉树是否是平衡二叉树。 首先,什么是平衡二叉树:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。 先求出左右两个子树的深度,若他们的深度差的绝对值>1,则不是平衡二叉树,还有一点最重要的是性质中说了左右两个子树都是一棵平衡二叉 ...
分类:
其他好文 时间:
2017-03-26 18:23:16
阅读次数:
164
一、描述: 二、思路 平衡二叉树(Balanced Binary Tree):又被称为AVL树(有别于AVL算法),且具有以下性质:它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树; 通过每一棵左右子树的深度判断子树是否为平衡二叉树,只有当所有的子树是平衡 ...
分类:
其他好文 时间:
2017-03-26 00:43:32
阅读次数:
216
介绍红黑树是一个平衡的二叉树,但不是一个完美的平衡二叉树。虽然我们希望一个所有查找都能在~lgN次比较内结束,但是这样在动态插入中保持树的完美平衡代价太高,所以,我们稍微放松逛一下限制,希望找到一个能...
分类:
其他好文 时间:
2017-03-23 19:14:03
阅读次数:
186
线段树的入门级 总结 线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。 对于线段树中的每一个非叶子节点[a,b],它的左儿子表示的区间为[a,(a+b)/2],右儿子表示的区间为[(a+b)/2+1,b]。因此线段树是平衡二叉树,最后的子节 ...
分类:
其他好文 时间:
2017-03-11 23:55:04
阅读次数:
331
该程序演示了map在形成的时候对内存的操作和分配。 因为自己对平衡二叉树的创建细节理解不够,还不太明白程序所显示的日志。等我明白了,再来修改这个文档。 程序的输出结果:process begin at 00C917FDCData(int i,string &s) [sequence:1 | rema ...
分类:
其他好文 时间:
2017-02-26 12:44:52
阅读次数:
192
关于红黑树和AVL树,来自网络: 1 好处 及 用途 红黑树 并不追求“完全平衡 ”——它只要求部分地达到平衡要求,降低了对旋转的要求,从而提高了性能。 红黑树能够以 O(log2 n) 的时间复杂度进行搜索、插入、删除操作。此外,由于它的设计,任何不平衡都会在三次旋转之内解决。当然,还有一些更好的 ...
分类:
其他好文 时间:
2017-02-17 23:11:47
阅读次数:
627
转自:http://dongxicheng.org/structure/red-black-tree/ 1. 简介 红黑树是一种自平衡二叉查找树。它的统计性能要好于平衡二叉树(AVL树),因此,红黑树在很多地方都有应用。在C++ STL中,很多部分(目前包括set, multiset, map, m ...
分类:
其他好文 时间:
2017-01-11 15:55:47
阅读次数:
340
1、定义 平衡二叉树(Balanced Binary Tree)是二叉查找树的一个改进,也是第一个引入平衡概念的二叉树。1962年,G.M. Adelson-Velsky 和 E.M. Landis发明了这棵树,所以它又叫AVL树。平衡二叉树要求对于每一个节点来说,它的左右子树的高度(深度)之差绝度 ...
分类:
其他好文 时间:
2017-01-07 10:48:17
阅读次数:
108