如何使用二进制搜索来搜索列表中大于特定值的第一个项目?

时间:2011-05-09 10:55:51

标签: java list search binary

使用Java。列表已排序,所以我想使用二进制搜索。我不想写额外的代码,有没有内置的方法来做这个?

2 个答案:

答案 0 :(得分:8)

你看过Collections.binarySearch了吗?这基本上是搜索部分 - 然后你需要查看结果是否为负(即未找到完全匹配)并采用按位补码(如果是这样)来查找项的位置已被插入。

答案 1 :(得分:0)

Arrays尝试JavaDocs对于binarySearcy()有大约17个函数定义

此处还有一些实现

编辑:

虽然你说你不想编写代码,但它确实可以获得你想要的东西。并一路学习:)

http://www.java-tips.org/java-se-tips/java.lang/binary-search-implementation-in-java.html http://en.wikibooks.org/wiki/Algorithm_Implementation/Search/Binary_search