Java版 非遞迴折半查詢

2021-06-29 08:33:20 字數 437 閱讀 2056

折半查詢又稱為二分查詢,這種查詢方法需要待查的查詢表滿足兩個條件:
首先,查詢表必須使用順序的儲存結構;
其次,查詢表必須按關鍵字大小有序排列。
演算法的基本思想是:首先,將查詢表中間位置資料元素的關鍵字與給定關鍵字比較,如果查詢相等則查詢成功;否則利用中間元素將表一分為二,如果中間元素關鍵字大於給定關鍵字,則在前一子表中進行折半查詢,否則在後一子表中進行折半查詢。重複以上過程,直到找到滿足條件的元素,則查詢成功;或者到子表為空為止,此時查詢不成功。
public static int binarysort(int s,int low,int high,int key)

return -1;

}

java演算法 折半查詢 遞迴演算法和非遞迴演算法

package ceshi public class bisearch param args 折半查詢 當查詢表是有序表時,可採用折半查詢 基本思想 在有序表中,取中間元素作為比較物件,若給定值k與中間記錄關鍵字相等,則查詢成功 若給定值k小於中間記錄的關鍵字,則在表的左半區繼續查詢 若給定值k大於...

折半查詢遞迴和非遞迴實現

折半查詢,在此做一總結,遞迴和非遞迴實現如下所示 1 data增序排列3 非遞迴折半查詢 4int binarysearch int data,int keyvalue,int len 15return 1 16 1718 遞迴折半查詢 19int binarysearchrecursion int...

折半查詢法的遞迴與非遞迴演算法

include stdio.h int bisearch int a,int low,int high,int k int main printf 請輸入你要查詢的數 n scanf d s printf 待查詢的數 d n s pos bisearch a,0,9,s 引數傳遞弄錯了,k和s。if...