八大排序演算法的python實現(八)簡單選擇排序

2022-07-20 07:06:09 字數 534 閱讀 7807

**:

#

coding:utf-8

#author:徐卜靈

#l = [6, 3, 2, 32, 5, 4]

defselect_sort(l):

for i in

range(0,len(l)):

for j in

range(i,len(l)):

if l[i] > l[j]: #

打擂台的形式

#temp = l[i]

#l[i] = l[j]

#l[j] = temp

# l[i],l[j] =l[j],l[i]

return

lprint select_sort(l)

這個演算法更簡單了,記住三個字:打擂台。

時間複雜度o(n ** 2)

空間複雜度o(1)

不穩定演算法。

記住四個穩定排序演算法:直接插入排序、氣泡排序、二路歸併排序、基數排序。剩下都是不穩定的。

八大排序演算法python實現

1.氣泡排序 氣泡排序重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越大的元素會經由交換慢慢 浮 到數列的頂端,故名。步驟 比較相鄰的元素。如果第乙個比第二個大,就交...

八大排序演算法

1.直接插入排序 原理 將陣列分為無序區和有序區兩個區,然後不斷將無序區的第乙個元素按大小順序插入到有序區中去,最終將所有無序區元素都移動到有序區完成排序。要點 設立哨兵,作為臨時儲存和判斷陣列邊界之用。實現 void insertsort node l,int length void shell ...

八大排序演算法

一 概述 八大排序演算法包括 1 插入排序之直接插入排序 straight insertion sort 2 插入排序之希爾排序 shells sort 3 選擇排序之簡單選擇排序 selection sort 4 選擇排序之堆排序 heap sort 5 交換排序之氣泡排序 bubble sort...