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


当前回答

最常见的应用之一是高效地以排序形式存储数据,以便快速访问和搜索存储的元素。例如,std::map或std::set在c++标准库中。

二叉树作为一种数据结构,对于表达式解析器和表达式求解器的各种实现非常有用。

它也可以用来解决一些数据库问题,例如,索引。

一般来说,二叉树是一种特定的基于树的数据结构的一般概念,各种特定类型的二叉树可以构造成具有不同性质的二叉树。

其他回答

在c++ STL中,以及许多其他语言的标准库中,如Java和c#。二叉搜索树用于实现set和map。

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

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

最常见的应用之一是高效地以排序形式存储数据,以便快速访问和搜索存储的元素。例如,std::map或std::set在c++标准库中。

二叉树作为一种数据结构,对于表达式解析器和表达式求解器的各种实现非常有用。

它也可以用来解决一些数据库问题,例如,索引。

一般来说,二叉树是一种特定的基于树的数据结构的一般概念,各种特定类型的二叉树可以构造成具有不同性质的二叉树。

在现代硬件上,由于糟糕的缓存和空间行为,二叉树几乎总是次优的。这也适用于(半)平衡的变种。如果您发现了它们,则说明性能不重要(或由比较函数主导),或者更可能是由于历史或无知的原因。