(JAVA)二分法
package com.book.lite;/*** @author zhangyu* @date 2021年08月12日 11:15 下午* 使用二分法,查找有序數(shù)組的某一個值*/
public class binarySeach {public static void main(String[] args){int[] arr = {2,4,5,9,45,65,74,83,100};int index = arrNumber(arr,0);System.out.println(index);}/*** @author zhangyu* @date 2021/8/12 11:35 下午* @param arr* @param index* @return int* 定義最小下標指針* 定義最大下標指針* 定義中間數(shù)的指針* 當查找值大于中間值時,最小下標指針移到中間位置* 當查找值小于中間值時,最大下標指針移到中間位置*/public static int arrNumber(int[] arr,int index){int min = 0;int max = arr.length-1;int mid = 0;while (min < max){mid = (min+max)/2;if (index <arr[mid]){max = mid;}else if (index > arr[mid]){min = mid;}else{return mid;}}return -1;}
}
總結(jié)
- 上一篇: 计算机发展与应用,网络计算机的发展与应用
- 下一篇: 一个很好用的桌面取色器和一个在线取色器