假设我有一个已排序的 Java ArrayList。现在我想找到值 x 的索引。最快(不超过 30 行代码)的方法是什么?使用 IndexOf() 方法?在一个简单的 for 循环中遍历所有值?使用一些很酷的算法?我们谈论的是大约 50 个整数键。
最佳答案
Binary search ,但因为它只有 50 项,谁在乎(除非你必须这样做数百万次)?简单的线性搜索更简单,50 个项目的性能差异可以忽略不计。
编辑:您还可以使用内置的 java.util.Collections binarySearch方法。请注意,即使找不到该项目,它也会返回一个插入点。您可能需要进行额外的几项检查,以确保该元素确实是您想要的。感谢@Matthew 的指点。
关于java - 排序列表时在列表中查找值的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/901546/