如果所有數字按照某種順序排列好就可以每次用中間位置的數字和要查詢的數字做對比,這樣一次可以排除一半的數字。
不斷重複這個過程就可以很快找到目標數字的位置。
/*
* 折半查詢
* */
#include int *half_search(const int *p_start, constint *p_end, int num)
else if (*p_mid > num)
else
}return null;
}int main()
; int num = 0, *p_num = null;
printf("請輸入乙個你要查詢的數字:\n");
scanf("%d", &num);
p_num = half_search(arr, arr + 9, num);
if (p_num)
else
return 0;
}
折半查詢(C語言)
題目 有15個資料由小到大順序存放在乙個陣列中,輸入乙個數,要求使用折半查詢法查詢該數是陣列中的第幾個元素 如果該數不存在,則輸出,沒有此數 有15個資料由小到大順序存放在乙個陣列中,輸入乙個數,要求使用折半查詢法查詢該數是陣列中的第幾個元素 如果該數不存在,則輸出,沒有此數 include def...
c語言折半查詢
折半查詢又稱為二分查詢,它的前提是線性表中的記錄必須是有序的 通常從小到大有序 線性表必須採用順序儲存 折半查詢的基本思想是 在有序表中,取中間記錄作為比較物件,若給定值與中間記錄的關鍵字相等,則查詢成功 若給定值小於中間記錄的關鍵字,則在中間記錄的左半區繼續查詢 若給定值大於中間記錄的關鍵字,則在...
折半查詢 C語言
一 二分查詢 在c和c 裡,二分查詢是針對有序陣列所用的一種快速查詢元素的方法。二 二分查詢的條件以及優缺點 條件 針對有序陣列 元素從小到大或從大到小 優點 查詢速度較快,時間複雜度為o n 缺點 有硬性條件的限制,而且即使查到後,插入與刪除困難。三 詳解 四 define crt secure ...