我想知道二叉树的具体应用是什么。你能举几个例子吗?
当前回答
最常见的应用之一是高效地以排序形式存储数据,以便快速访问和搜索存储的元素。例如,std::map或std::set在c++标准库中。
二叉树作为一种数据结构,对于表达式解析器和表达式求解器的各种实现非常有用。
它也可以用来解决一些数据库问题,例如,索引。
一般来说,二叉树是一种特定的基于树的数据结构的一般概念,各种特定类型的二叉树可以构造成具有不同性质的二叉树。
其他回答
在c++ STL中,以及许多其他语言的标准库中,如Java和c#。二叉搜索树用于实现set和map。
摩尔斯电码的结构是二叉树。
几乎所有的数据库(和类数据库)程序都使用二叉树来实现它们的索引系统。
最常见的应用之一是高效地以排序形式存储数据,以便快速访问和搜索存储的元素。例如,std::map或std::set在c++标准库中。
二叉树作为一种数据结构,对于表达式解析器和表达式求解器的各种实现非常有用。
它也可以用来解决一些数据库问题,例如,索引。
一般来说,二叉树是一种特定的基于树的数据结构的一般概念,各种特定类型的二叉树可以构造成具有不同性质的二叉树。
在现代硬件上,由于糟糕的缓存和空间行为,二叉树几乎总是次优的。这也适用于(半)平衡的变种。如果您发现了它们,则说明性能不重要(或由比较函数主导),或者更可能是由于历史或无知的原因。