温叶博客

温叶博客

标签 树 下的文章

Trie树/字典树

介绍Tire树又称字典树/前缀树,具有如下特点根节点不包含字符 除根节点外每个节点只包含一个字符树的每一个路径都是一个字符串每个节点的子节点包含的字符都不相同用途利用字符串的公共前缀来降低查找的时间,常用于搜索系统文本词频统计实现type TrieMap = { [key: string]: any; } & { isEnd?: boolean }; class Trie { ...

平衡二叉树

介绍定义平衡二叉树又叫平衡二叉排序树,听名字知道和二叉排序树相关。实际上平衡二叉树就是每个节点最大高度差为1的二叉排序树。相比较二叉排序树,平衡二叉树查找,插入和删除的时间复杂度都维持在O(logn)。不了解二叉排序树的可以看看我的上一篇文章二叉排序树平衡因子节点左右子树的高度差就是平衡因子,值只能为0, -1和1,分别对应左右等高,右比左高,左比右高。叶子节点的平衡因子始终为0最小失衡树新...

二叉排序树

介绍二叉排序树又称二叉搜索树,听名字都知道是方便排序和查找的树定义可以是一颗空树 或者是具有如下性质的二叉树若左子树不空 则左子树上所有节点的值都小于根节点的值若右子树不空 则右子树上所有节点的值都大于根节点的值它的左右子树也都是二叉排序树特点中序遍历是一个有序序列,比如上图的中序遍历结果是: [1, 3, 4, 6, 7, 8, 9, 10, 13, 14]查找复杂度取决于深度,好的话是二...