欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

二分法查找

程序员文章站 2022-03-14 20:40:51
...
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无法查找最大数。
相关标签: Java