【发布时间】:2011-02-10 07:14:30
【问题描述】:
我刚刚意识到,在我 4 年多的 Java 编程(主要是桌面应用程序)中,我从未将 Arrays 类中的二进制搜索方法用于任何实际操作。一次都没有。我能想到的一些原因:
- 在 100% 的情况下,您可以使用线性搜索、地图或其他非二分搜索。
- 传入的数据几乎从未排序,要对其进行排序需要额外的排序步骤。
所以我想知道是不是只有我一个人,还是很多人从不使用二分搜索?二分搜索有哪些好的实用示例?
【问题讨论】:
-
我投票决定以重复的形式关闭。然而,这个问题的优点在于它解决了数据尚未排序这一点。我能想到的二进制搜索、霍夫曼树等的大多数用途是数据已经以硬烘焙格式呈现(尽管它与 MPEG 文件一样常见)。
-
@Vijay - 不是重复的。该问题正在讨论二叉树。 OP 的问题是,如果这些数组操作可以很容易地被二叉树和其他非数组优点取代,为什么它们如此受欢迎。
标签: java arrays binary-search