/**
* @param args
* @author wangxianpeng
* 工作原理 :
* 二分查詢法 又稱折半查詢法 。將陣列中間位置記錄的關鍵字與查詢的關鍵字進行比較,
* 如果兩者相等 則查詢成功; 否則利用中間位置記錄將陣列分成前,後兩個子陣列
* ,如果中間位置記錄的關鍵字大於查詢關鍵字,則進一步查詢前面的子陣列
* ,否則 進一步查詢後面的子陣列。重複以上的過程,直到找到或找不到為止。
* * 步驟:
* 1. 建立陣列 array並靜態初始化。
* * 2. 提示使用者 屬於要查詢的數 number
* * 3.宣告開始下標start, 結束下標 end ,中間下標 middle並賦值 。
* * 4.宣告下標號 index 並賦值為-1;
* * 5. 找出中間座標的公式是 middle = (start + end) / 2。
* * 6.if (number == array[middle]) 則把下 index = middle; break;
* * 7.if(number > array[middle]) 則 start = middle +1;
* * 8.if(number < array;
7int start = 0;
8int end= array.length -1;
9int middel = 0;
10int index = -1;
1112
1314
15while (start <=end)
24else
if(number >array[middel])
27else30}
3132
if(array(number) == -1)
3536
37else
40 }
查詢之二分查詢
二分查詢前提查詢的序列需要有序 十分好理解 取中間值與目標值對比查詢 注意下數值邊界 public static void main string args int arr2 int arr3 int index binarysearch arr,34 int index2 binarysearch...
查詢演算法 一 之二分查詢
二分查詢也稱折半查詢 binary search 它是一種效率較高的查詢方法。但是,折半查詢要求線性表必須採用順序儲存結構,而且表中元素按關鍵字有序排列。首先,假設表中元素是按公升序排列,將表中間位置記錄的關鍵字與查詢關鍵字比較,如果兩者相等,則查詢成功 否則利用中間位置記錄將表分成前 後兩個子表,...
二維陣列二分查詢
牛客網上面練的第一道程式設計題,終於有次百分之百通過了。思路 乙個for迴圈,每一行用個二分查詢,因為題目中陣列是有效的,所以很容易的就朝二分走了 publicclasssolutionelse returnresult publicbooleansearch intright,intleft,in...