1:線性查詢演算法
(這個就是典型的線性查詢,從頭到尾)
//查詢資料
//我們是根據什麼來查詢呢?我們是根據值來查詢,返回她的所有值
public int search(long value)
}2:二分法查詢演算法
二分法查詢前提是你這個陣列是有序的
比如說一組陣列是
1,3,4,5,7,9,10
二分法查詢是從中間開始
一邊是往左邊查,一邊是往右邊查
思考:什麼時候從左邊查,什麼時候從右邊查呢?5比3大,所以我需要的數肯定在左邊,
接著又在1,3,45,之間進行二分法,直到查到為止
//二分法查詢資料
public int binarysearch(long value)else if(low >pow)elseelse}}
}測試**
myorderarray myorderarray = new myorderarray();
myorderarray.insert(90);
myorderarray.insert(80);
myorderarray.insert(30);
myorderarray.insert(20);
myorderarray.diplay();
system.out.println(myorderarray.binarysearch(30));
Java 查詢演算法
這個問題有幾個點要先確認 如果知道下標的話就方便了,查詢的複雜度為1.如果是針對值的查詢,那麼順序遍歷是o n 二分查詢 使用二分查詢的話可以減少時間複雜度為 o logn 二分查詢又稱折半查詢,它是一種效率較高的查詢方法。二分查詢要求 1.必須採用順序儲存結構 2.必須按關鍵字大小有序排列。aut...
查詢演算法Java版
順序查詢演算法 1.演算法描述 順序比較即可。2.平均查詢長度 n 1 2,其中n為表長。3.演算法實現 省略4.優化思想 根據經驗,目前被查到越多的元素,將來可能被查到的可能性也越大。所以可以考慮,每次查詢到乙個元素後,將它和直接前驅交換位置。如果上述的經驗從概率上來講是成立的,則可以加快順序查詢...
Java 常用查詢演算法
二叉樹 左子樹上的所有節點值均小於根節點值,右子樹上的所有節點值均不小於根節點值,左右子樹也滿足上述兩個條件。插入過程如下圖 比較4與7,4 7,再比較4與7的左子樹6,4 6,比較4與6的左子樹3,4 3,比較4與3的右子樹,為空,插入4。字串作為key比較可以用compareto 刪除分為三種情...