赞
踩
//主方法
import domain.binartSearchForIndex;
public class MyBinarySearchDemo {
public static void main(String[] args) {
//定义静态整数数组
int[] arr = {11,22,33,44,55};
//创建要查找的数字
int number = 33;
//类名.方法名 传入数组和整数参数,并创建变量x接收返回回来的整数
int x = binartSearchForIndex.binartSearchForIndex(arr,number);
//打印该数字在数组中的位置
System.out.println(x);
}
}
//二分查找方法体 public class binartSearchForIndex { /* 二分查找法 */ //传入一个数组参数,和要查找的值 public static int binartSearchForIndex(int[] arr, int number) { //定义查找范围 int min = 0; int max = arr.length - 1; //while判断 while (min <= max) { //计算出中间的位置 int mid = (min + max) / 2; //mid指向的元素 > number if (arr[mid] > number) { max = mid - 1; } else if (arr[mid] < number) { //mid指向的元素 < number //表示要查找的元素在右边 min = mid + 1; } else { //mid指向的元素 = number return mid; } } //如果min大于了max 就表示元素不存在,返回 -1 return -1; } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。