一、排序演算法總結
(1)插入排序:直接插入排序,希爾排序
(2)交換排序:氣泡排序,快速排序
(3)選擇排序:直接選擇排序,堆排序
(4)歸併排序:
(5)桶排序:
空桶排序法,非常耗空間,需要指定max(arr[i]) + 1個空桶
規定陣列中元素的最大值不超過陣列的長度,否則要先求出陣列元素的最大值後,才能指定空桶的個數
要求待排序陣列中沒有重複的元素
以上演算法有通過遞迴實現,也通過非遞迴演算法實現,這裡不比較這兩種演算法。
對遞迴演算法,其關鍵:找到遞迴出口,先由上而下再由下而上求解。
二、 查詢
(1)簡單順序查詢
(2)有序表的二分查詢
(3)索引表的順序查詢
(4)樹表的查詢
(a) 二叉排序樹查詢
(b) 平衡二叉樹查詢
(5)雜湊表(雜湊表)的查詢
以上大部分演算法都會在本部落格中實現,期待指導和交流,謝謝!
排序演算法和查詢演算法總結
1.氣泡排序 解釋 所謂氣泡排序,就是如同水裡的泡泡一樣,將合適的值一次次往上冒,直到所有資料全部處理完成。在資料中的解釋就是 從第乙個數開始,每次都將前乙個數與後乙個數作比較,如果前乙個數大於後乙個數,則將兩者交換位置 否則不交換 此時,後乙個數值已變化,然後再將後乙個數與後後乙個數作比較,重複操...
查詢演算法和排序演算法的歸納總結
查詢演算法 有序查詢 時間複雜度 o n 二分查詢 時間複雜度 o logn 有序查詢演算法實現 public int search int searcher 二分查詢演算法實現 public int binary search int searcher return 1 排序演算法 氣泡排序 時間...
排序演算法和查詢演算法
法是用來解決常見問題的方法 同乙個問題可以採用多種方法解決,不同 方法適用於不同的環境 排序指的是把一組數字按照某種順序排列好 排序演算法分很多次重複執行,每次負責把 乙個數字放在合適的位置上 為了實現以上效果可以先確定數字然後查詢 位置也可以先確定位置然後查詢數字 通過不斷調整兩個數字的相互順序最...