二分查詢 Java版

2021-08-02 07:13:07 字數 1139 閱讀 7413

演算法思想:又叫折半查詢,要求待查詢的序列有序。每次取中間位置的值與待查關鍵字比較,如果中間位置的值比待查關鍵字大,則在前半部分迴圈這個查詢的過程,如果中間位置的值比待查關鍵字小,則在後半部分迴圈這個查詢的過程。直到查詢到了為止,否則序列中沒有待查的關鍵字。

三種查詢方法的比較

平均效能:斐波那契》折半

* *二分查詢

* 演算法思想:又叫折半查詢,要求待查詢的序列有序。每次取中間位置的值與待查關鍵字比較,如果中間位置的值比待查關鍵字大,

* 則在前半部分迴圈這個查詢的過程,如果中間位置的值比待查關鍵字小,則在後半部分迴圈這個查詢的過程。直到查詢到了為止,

* 否則序列中沒有待查的關鍵字。

*二種查詢方法的比較

* 平均效能:斐波那契》折半

*/public

class

binary_search ;

int num = bisearch(a ,15);

system.out.println(num);

}//1.非遞迴**

public

static

intbisearch(int array,int a)else

if(array[mid]1;

}else

}return -1;

}//2.遞迴實現 時間複雜度為 o(logn)

二分查詢 Java版

二分查詢 二分查詢又稱折半查詢,它是一種效率較高的查詢方法 實現原理 通俗點來講就是將要查詢部分對折,然後分為三部分 中間部分,中間前的部分,中間後的部分,將要查詢的和中間部分進行比較,如果小於中間部分則在中間部分的前面找,否則就在中間部分的後邊找,然後再重複上邊折半的過程 使用要求或者前提 通過實...

二分查詢演算法解析(java版)

1 確定該區間的中點位置 mid low high 2 min代表區間中間的結點的位置,low代表區間最左結點位置,high 代表區間最右結點位置 2 將待查 a值與結點 mid的關鍵字 下面用 r mid key 比較,若相等,則查詢成功,否則確定新的查詢區間 如果 r mid key a 則由表...

java二分查詢

public class binarysearch int value 11 int pos binarysearch int arrays,value system.out.println the pos is pos private static int binarysearch int int...