浏览 2351 次
锁定老帖子 主题:二分法查找
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-11-26
package ruantong.test; import java.util.Arrays; public class Test1 { public static void main(String[] args) { // 定义数组 int[] a = { 0, 15, 14, 22, 28, 35, 98, 109, 44, 12, 9, 78, 67, 56, 54 }; Arrays.sort(a);//数组排序 System.out.println(a.length); int search = 109;// 所要查找的值 int index = 0;// 类似于指针的东西,数组下标 int start = 0;// 查找起始下标 int end = a.length;// 查找结束下标 int count = 0;// 保留循环次数 while (true) { count++;//循环次数 //每次取得剩余的数组下标 index = start + ((end - start) / 2); if (a[index] < search) { start = index; } else if (a[index] > search) { end = index; } else { break; } } System.out.println(" 二分法查找,需要比较的次数:" + count); } } 有人发过帖子,但是数组的length-1无法查找最大数。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |