试图弄清楚
声明一个数组
int [] iArray = {6,12,3,9}
冉二进制搜索数字9
返回值是-2
有人可以向我解释原因吗?
在运行二进制搜索之前,是否必须对数组进行排序才能获得所需的结果?
我很困惑大声笑
最佳答案
您会得到-2,因为您要查找的9会位于列表的第一个索引和第二个索引之间。那就是它的插入位置(如果已排序,则在6到9之间)。
{http://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#binarySearch%28int[],%20int%29}
关于java - 关于二进制搜索的问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23483493/