C語言 二分查詢

2021-10-25 02:49:31 字數 1085 閱讀 3060

二分查詢有序陣列中查詢具體某個數

條件:陣列為有序陣列(公升序或降序)

查詢的思想:在有序陣列中查詢具體某個數,如果有,輸出該數所對應的下標;如果沒有,輸出未找到.

具體思想:若為公升序排列的陣列,取陣列中間元素與待查詢的數比較,若待查詢的數小於中間元素,則在陣列左半部分查詢;若待查詢的數大於中間元素,則在陣列右半部分查詢;若相等,輸出元素下標.

源**

#define _crt_secure_no_warnings

#include

#include

intmain()

;//left表示待查詢區間的左側陣列下表

int left =0;

//right表示待查詢區間的右側陣列下標

int right =

sizeof

(arr)

/sizeof

(arr[0]

);//mid表示待查詢區間中間元素下標

int mid =0;

//需要查詢的數字

C語言折半查詢(二分查詢)

定義 對使用者輸入的數是否在已經按順序定義好的一組數上進行查詢 思想 定義好的一組數必須按順序排序,一般從小到大排序 將一組數分為兩個部分 low指第乙個數,mid指中間乙個數,high指第最後乙個數 把查詢數n與mid比較 如果n mid,說明在mid右側,low的位置發生改變,除去當時low本身...

c語言 二分查詢(折半查詢)

a 你的新鞋子好炫酷,多少錢買的呀?b 在100 300之間,你猜一下咯,每次我只告訴你猜大了還是猜小了,直到你猜對為止,看看你能不能很快猜出來。a 小夥伴在生活中有沒有和好朋友玩過類似的遊戲呢,不知道接下來你會選擇何種方式去猜呢?如果從100開始乙個乙個往後試,就顯得稍稍有點無腦了,每次猜測的時候...

二分查詢(C語言描述)

二分查詢是比較簡單的一種搜尋方式,但是它必須基於乙個已排序的陣列,換句話說的話,也就是二分查詢是需要乙個比較來判斷是往哪一方縮小查詢區間 建議查詢益於比較的資料 例如數字 上 對分查詢 includeint binarysearch const int a,int x,int n 定義對分查詢函式 ...