我想知道二叉树的具体应用是什么。你能举几个例子吗?


当前回答

你的程序语法,或者其他很多东西,比如自然语言,都可以用二叉树来解析(虽然不一定)。

其他回答

几乎所有的数据库(和类数据库)程序都使用二叉树来实现它们的索引系统。

它们可以作为一种快速排序数据的方法。在O(log(n))处将数据插入二叉搜索树。然后遍历树,对它们进行排序。

二叉树最重要的应用之一是平衡二叉搜索树,比如:

红黑树 AVL树 替罪羊树

这些类型的树具有这样的特性,即通过每次插入或删除节点时进行旋转等操作,将左子树和右子树的高度差保持在较小的范围内。

因此,树的整体高度保持为log n的阶数,并且搜索、插入和删除节点等操作在O(log n)时间内执行。c++的STL也以集合和映射的形式实现了这些树。

摩尔斯电码的结构是二叉树。

java.util.Set的实现