package ceshi;
public class bisearch {
/*** @param args
*//* 折半查詢--當查詢表是有序表時,可採用折半查詢;
基本思想:在有序表中,取中間元素作為比較物件,若給定值k與中間記錄關鍵字相等,則查詢成功;
若給定值k小於中間記錄的關鍵字,則在表的左半區繼續查詢;
若給定值k大於中間記錄的關鍵字,則在表的右半區繼續查詢,不斷重複,直到查詢成功/失敗。
*/ //折半查詢非遞迴演算法
//查詢成功返回該物件的下標序號,失敗時返回-1。
int bisearch(int r,int n,int k)
{ int low=0;
int high=n-1;
while(low<=high)
{ int mid=(low+high)/2;
if(r[mid]==k)
return mid;
else
if(r[mid]high)
return -1;
else
{ int mid=(low+high)/2;
if(r[mid]==k)
return mid;
else
if(r[mid]
undoner(小傑部落格) :
lsoft.cn(琅軟中國) :
折半查詢的遞迴演算法
可能很多地方做得不好,希望大家給我意見。這個演算法是用c 寫的折半查詢的演算法,用的是遞迴演算法。演算法 折半查詢的遞迴演算法 includeusing namespace std define maxsize 100 define ok 1 typedef structelemtype typed...
java演算法之折半查詢
int mid low high 2 0 6 2 3 a mid a 3 20 因為 num a mid 所以 low mid 1 4 high 6 step2 mid 4 6 2 5 a mid a 5 35 因為 num a mid 所以 low mid 1 high 6 step3 mid l...
查詢演算法 折半查詢演算法
折半查詢演算法 binary search param a 乙個有序的集合 本次為由小到大 param x 需要查詢的值 ps 首先使用折半演算法的時候 集合必須是有序的 eg a 1,3,5,7,9 x 3 a mid low height 1,3,5,7,9 2 0 1 1,3 0 1 1 3 ...