Java中常見的排序算法包括以下幾種:
1.冒泡排序(Bubble Sort):從頭到尾依次比較相鄰的兩個數,將較大的數往后移,一次遍歷可以將一個數移動到它應該在的位置,最后得到有序序列。
2.選擇排序(Selection Sort):每次遍歷選擇最小的數,放到前面已排序部分的末尾。
3.插入排序(Insertion Sort):從未排序的數列中取出一個數,在已排序序列中從后往前掃描,將大于該數的數往后移一位,直到找到該數的位置,將該數插入到相應的位置。
4.快速排序(Quick Sort):通過一趟排序將待排記錄分割成獨立的兩部分,其中一部分記錄的關鍵字均比另一部分記錄的關鍵字小,然后遞歸地對兩部分記錄繼續進行排序,直到整個序列有序。
5.歸并排序(Merge Sort):將序列遞歸地分成兩半,對每個子序列進行排序,然后將兩個子序列歸并成一個有序序列。
6.希爾排序(Shell Sort):對插入排序的改進,將待排序序列分割成若干子序列分別進行插入排序,通過縮小增量的方式逐步將子序列合并成一個有序序列。
7.堆排序(Heap Sort):將待排序序列構建成一個大根堆或小根堆,依次將堆頂元素和堆底元素交換,然后重新調整堆結構,得到有序序列。
8.計數排序(Counting Sort):統計待排序序列中每個元素出現的次數,根據元素出現次數進行排序。
9.桶排序(Bucket Sort):將待排序序列分配到若干個桶中,對每個桶中的元素進行排序,最后按順序遍歷所有桶,得到有序序列。
10.基數排序(Radix Sort):按照元素的位數,從低位到高位依次進行排序,每一次排序按照指定位數上的數字進行桶排序,最后得到有序序列。
以上是Java中常見的排序算法,每個算法都有其特點和適用場景,選擇合適的算法可以提高排序的效率。