<pre class="html" name="code"><pre class="html" name="code">public class BubbleTest { public static int binary(int[] array, int value) { int low = 0;//定义低位的下标 int high = array.length - 1;//定义高位下标 while (low <= high) {
int middle = (low + high) / 2; if (value == array[middle]) { return middle; } if (value > array[middle]) { low = middle + 1; } if (value < array[middle]) { high = middle - 1; } }//如果找不到返回相近下标的相反数减1; return -1; }
public static void main(String[] args) { int[] a = { 1, 2, 4, 5, 6, 7, 8, 9 }; int value = binary(a, 9); int values = Arrays.binarySearch(a, 3); Arrays.sort(a);//查找之前进行排序操作 System.out.println(value); System.out.println(values); }}
二分法查找的代码及原理
最新推荐文章于 2022-07-20 19:03:35 发布