平衡二叉树(Balanced Binary Tree)具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树 右旋:在插入二叉树的时候,根节点的右侧高度大于左侧高度,且绝对值超过了2,并且在root.左侧的值大于插入的值时发生右旋 。 左右旋:在插入 ...
分类:
编程语言 时间:
2020-02-27 20:36:41
阅读次数:
49
参考了 : http://data.biancheng.net/view/59.html 这篇文章 给大家推荐一个模拟平衡二叉树实现的网站(超级好用): https://www.cs.usfca.edu/~galles/visualization/AVLtree.html 最近花 了点时间 , 把上 ...
分类:
其他好文 时间:
2020-02-25 00:22:57
阅读次数:
117
// 节点类 class Node { constructor(data) { this.data = data this.left = null this.right = null } } //平衡二叉树Balanced Binary Tree class BBT { constructor() ...
分类:
其他好文 时间:
2020-02-25 00:17:57
阅读次数:
71
平衡二叉树的判断 如何判断是否为平衡二叉树? 答: 每个节点的左右子树高度差的绝对值小于等于1,我们认为该二叉树平衡; ? 只要有一个节点的左右子树高度差绝对值大于1,我们认为这颗二叉树不平衡 。 因此,判断一棵树是否平衡,需要计算树的高度以及判断高度差。 下面介绍两种判断平衡二叉树的方式: 自顶向 ...
分类:
其他好文 时间:
2020-02-24 09:26:25
阅读次数:
118
Leetcode: "110. 平衡二叉树" Leetcode: "110. 平衡二叉树" 点链接就能看到原题啦~ 关于AVL的判断函数写法,请跳转: "平衡二叉树的判断" 废话不说直接上代码吧~主要的解析的都在上面的链接里了 自顶向下写法 ...
分类:
其他好文 时间:
2020-02-24 09:23:09
阅读次数:
64
二分搜索树 6-1 为什么要研究树结构 树结构 为什么要有树结构? 树结构本身是一种天然的组织结构 高效 将数据使用树结构存储后,出奇的高效。 二分搜索树(Binary Search Tree) 平衡二叉树:AVL;红黑树 堆;并查集 线段树;Trie(字典树,前缀树) 6-2 二分搜索树基础 和链 ...
分类:
其他好文 时间:
2020-02-23 20:26:55
阅读次数:
82
1、平衡二叉树:若一个二叉树,任意节点的深度差不超过1,这个二叉树就是平衡二叉树。 2、如何判断一个树是平衡二叉树:求每个节点的左子树和右子树的深度,做差。 参看剑指offer:https://www.cnblogs.com/guoyu1/p/12190567.html ...
分类:
其他好文 时间:
2020-02-23 11:54:22
阅读次数:
45
######################################################## """ 一、树 1、什么是树? 树状图是一种数据结构,它是由n(n>=1)个有限节点组成一个具有层次关系的集合。 把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下 ...
分类:
编程语言 时间:
2020-02-23 09:39:17
阅读次数:
74
B+树作为索引最为常见,亦是数据库中最为频繁的一种索引。 B+树通过二叉查找树,再由平衡二叉树,最后加B树演化而来。 1. 二分查找法 二分查找法(binary search)也叫折半查找法,从有序数组中查询某一条记录。 基本思想:将记录按有序(递增或递减)排列,先查找数组中的中间位置的对象,如果t ...
分类:
其他好文 时间:
2020-02-22 20:05:29
阅读次数:
56
一、技术总结 1. 这是一个平衡二叉树AVL树,就是一个二叉查找树,但是平衡因子不能够超过1。 2. 这个树的数据结构比一般的要多一个height的参数,用于计算平衡因子,就是用当前结点的左子树的height减去右子树的height。 3. 对于node newNode(int data)函数,首先 ...
分类:
其他好文 时间:
2020-02-21 19:56:03
阅读次数:
49