折半查詢,顧名思義,就是一組有順序的數,按照比較大小的方法找出某乙個數,類似二分法
**如下:
#include#includevoid find(int arr1, int key, int right)
else if (key > arr1[mid])
left = mid + 1;
else right = mid - 1;
}if (left = right)
printf("\n您要找的數不存在,請重試!");
}int main()
;int k,len;
len = sizeof(arr);
printf("請輸入你要查詢的數:");
scanf("%d", &k);
find(arr,k,len);
system("pause");
return 0;
}
本文出自 「分享中進步」 部落格,請務必保留此出處
C語言實現 折半查詢演算法
什麼叫折半?就是用已知的數與乙個有序數列序列號最中間的數相比較,縮小查詢範圍。先寫查詢函式binsearch,三次判斷。然後主函式呼叫。includeint binsearch int a,int x,int len if x a mid x a mid 時,右邊界變為中間下標 1 if x a m...
折半查詢(一) C語言實現
折半查詢也稱為二分查詢,該方法是將給定值與中間位置記錄的關鍵碼比較。若相等,則查詢成功 若不相等,則縮小範圍,直至新的查詢區間中間位置記錄的關鍵字碼等於給定值或者查詢區間沒有元素時 表明查詢不成功 為止。includeint binarysearch int a,int n,int index el...
c語言實現折半查詢演算法(二分查詢)
實驗課上乙個題目題目要求使用折半查詢演算法查詢資料,結果一番折騰也沒能夠實現。下來查了一些資料,第一次寫部落格就實現一下這個未完成的演算法。折半查詢要求資料序列呈現線性結構,也就是經過排序的,假設資料已排序。演算法的操作步驟 首先需要設3個變數lownum,midnum,highnum,分別儲存陣列...