尝试解决这个问题
声明了一个数组 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/