【发布时间】:2014-04-28 01:38:50
【问题描述】:
在互联网上搜索后,我无法让自己满意,因为我发现了一组全面的情况,在这些情况下,线性搜索比二分搜索更可取。
我基本上想知道是否有可能编制一份相对明确的建议列表(从工业中可能发现的一般编程的角度来看)。或者,如果能证实我确实已经了解了有关该主题的所有内容,我将不胜感激。
【问题讨论】:
-
如果数据最初是未排序的,如果你只搜索一次,线性搜索肯定比排序后二进制搜索快。
-
“只被搜索一次”可以扩展为“相对于列表的大小将被搜索少量次”。正如您所说,“小”是一个模糊的概念,只能通过对特定情况进行基准测试来确定。
-
(6) 你有不止一维数据(然后二分查找变得更难)
-
不,那你还是按字典序和二分搜索排序。
-
@user2357112 我显然的意思是你想搜索你没有索引的维度组合,或者你想执行范围搜索。当您对第一个组件不感兴趣时,词典排序不会给您带来很多好处。当然我们可以在其中使用多维数据结构和“二分搜索”,但正如我所说,它变得更加复杂
标签: algorithm search binary-search linear-search