Python常用的排序算法有以下幾種:
冒泡排序(Bubble Sort):依次比較相鄰的元素,按照大小順序進行交換,最大(或最小)的元素會逐漸“冒泡”到最后的位置。
插入排序(Insertion Sort):將元素逐個插入到已排序的序列中的合適位置,直到所有元素都插入完成。
選擇排序(Selection Sort):每次選擇最小(或最大)的元素放在已排序序列的末尾。
快速排序(Quick Sort):通過一趟排序將序列劃分為兩個部分,其中一部分的元素都比另一部分小(或大),然后再分別對這兩部分進行快速排序。
歸并排序(Merge Sort):將序列分成兩個子序列,分別進行排序,然后將兩個有序子序列合并成一個有序序列。
堆排序(Heap Sort):利用二叉堆的性質進行排序,先將序列構建成大(或小)頂堆,然后依次取出堆頂元素并調整堆。
希爾排序(Shell Sort):將序列按一定間隔分組,對每組進行插入排序,然后逐步縮小間隔直到為1,最后執行一次完整的插入排序。
計數排序(Counting Sort):統計每個元素的出現次數,然后根據統計信息重新排列。
桶排序(Bucket Sort):將序列分散到多個有序的桶中,然后對每個桶中的元素進行排序,最后合并桶中的元素。
以上僅為常見的幾種排序算法,每種算法都有自己的特點和適用場景。在實際應用中,根據具體情況選擇合適的排序算法可以提高排序效率。