算法圖解學習筆記01之二分查找

不知道可以學到第幾章,就不立flag了,容易倒

你要學會的不是寫算法而是何時何地用何算法

package 第一章;
//數組有序,要求快速查找出數據
public class BinarySearch {
	public static void main (String[] args) throws java.lang.Exception
	{
	    int[] arr = {1,2,3,4,5,6};
		System.out.println(binarySearch(arr,3));
	}
	public static int binarySearch(int[] arr, int item) {
	    int low = 0;
	    int high = arr.length-1;
	    while(low<=high) {
	        int mid = (low+high)/2;
	        if(arr[mid] == item) {
	            return mid;
	        }else if(arr[mid]<item) {
	            low = mid+1;
	        }else {
	            high = mid-1;
	        }
	    }
	    return -1;
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章