4

可能重复:
实践中在哪里使用二进制搜索?
二叉树的应用有哪些?

我做过各种练习,包括添加、删除、排序等。

但是,我很难想象在现实世界的程序中使用二叉搜索树。我的意思是肯定它比其他一些搜索算法快得多。但这是它唯一的用途吗?

你能给我一些这个算法在现实世界软件中使用的例子吗?

4

2 回答 2

2

每当您使用地图(或字典)时,您都在使用二叉搜索树。这意味着当您需要存储看起来像

myArray["not_an_integer"] = 42;

您可能正在使用二叉搜索树。

例如,在 C++ 中,您有std::mapandstd::hash_map类型。第一个被编码为带有插入和查找的二叉树O(log(n)),而第二个被编码为哈希映射(带有O(1)查找时间)。

编辑:我刚刚找到了这个答案。你应该看看它。

于 2012-12-16T10:45:56.013 回答
0

计算机图形学中需要二进制空间分区。这使用二分搜索。更多详细信息,请访问: http ://en.wikipedia.org/wiki/Binary_space_partitioning

于 2012-12-16T10:47:39.230 回答