二叉搜索树

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二叉搜索树相关的知识,希望对你有一定的参考价值。

原文地址

三叉搜索树是用来解决字典树的内存问题的数据结构。为了避免不需要的节点的内存占用,每个字典树节点不再使用数组,而是使用“树中有树”的结构。在三叉搜索树中,字典树节点的每个非空指针得到它自己。

例如,有四个单词,AB、ABBA、ABCD和BCD,它的三叉搜索树结构如下: 
技术分享

三叉搜索树包括三种箭头。第一种,向下的虚线箭头。遍历这种箭头,就能得到相匹配的单词。第二种,左右箭头。当当前位置字符不满足需要时,遍历这种箭头。当当前位置字符小于需求时,遍历右箭头;反之,左箭头。

例如, 
绿色箭头展示了如何确认三叉搜索树是否包含单词ABBA: 
技术分享

下面这幅图展示如何发现三叉搜索树不包含单词ABD: 
技术分享

以上是关于二叉搜索树的主要内容,如果未能解决你的问题,请参考以下文章

二叉树二叉搜索树中的众数(leetcode501)

手撕STL二叉搜索树

手撕STL二叉搜索树

LeetCode-树二叉搜索树与双向链表

数据结构学习笔记04树(二叉树二叉搜索树平衡二叉树)

算法漫游指北(第十三篇):二叉树的基本概念满二叉树完全二叉树二叉树性质二叉搜索树二叉树定义二叉树的广度优先遍历