Java查詢演算法

2021-07-25 12:34:13 字數 708 閱讀 9517

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 刪除分為三種情...