package chapter1; public class Binsearch { /** * 折半查找 * @param args */ public static int binsearch(int list[], int searchnum, int left, int right) { int middle; int result; while (left <= right) { middle = (left + right) / 2; result = (list[middle] > searchnum) ? 1 : ((list[middle] < searchnum) ? -1 : 0); switch (result) { case -1: left = middle + 1; break; case 0: return middle; case 1: right = middle -1; break; } } return -1; } public static void main(String[] args) { int list[] = new int[8]; for (int i = 0 ; i < 8; i++) { list[i] = 90 + i; } System.out.println("index=" + binsearch(list, 95, 0, 7)); } }