python中冒泡 選擇 插入排序

2021-09-19 05:58:19 字數 814 閱讀 3830

氣泡排序 公升序

降序 氣泡排序屬於交換排序,n個數從右向左,兩兩交換比較大小,一開始所有數字無序排放可以看作乙個無序區,最後一位數字,與倒數第二位數字比較,若效小於第二位數字,則交換位置,否則保持原樣,倒數第二位與倒數第三位數比較,若倒數第二位小於倒數第三位,則交換位置,否則保持原樣,按照這種交換規則比較完第一位數字。

這時候第一位是所有數字中最小的,同時可以看作有序區形成,無序區數字數目減少。再次從無序區進行相同的比較,選出第二小的數字,追加到有序區後面,這樣有序區一直在增加,無序區減少,直到無序區沒有數字可以比較。

**實現

ll=[1,2,3,4,2,2,3]

for i in range(1,len(ll)):

flag=true #定義乙個引數

for j in range(1,len(ll)-1):

if ll[j]冒泡法

簡單選擇排序 公升序

n個數,從左到右,索引從0到n-1,兩兩依次比較,記錄大值索引,此輪所有數比較完畢後,將大值索引和最後一位數交換位置,如果最大索引為n-1則不交換。以此類推,每次右邊都會得到乙個大數。

降序n個數從左到右,索引從左到右,是乙個無序區,兩兩依次比較,記錄大值索引,將大值與索引0數交換位置,有序區形成,第二輪從索引1位置開始,記錄最大值索引,與索引1交換位置,以此類推,每次有序區都會得到乙個最大值,無序區都會減少乙個數字。

for i in range(len(ll)):

a=0for j in range(len(ll)-i):

if a簡單選擇排序總結

直接插入排序

直接插入排序原理

冒泡,選擇,插入排序

arr 8,3,1,2,5 定義全域性陣列,用於氣泡排序 arr1 9,6,7,1,4 定義全域性陣列,用於選擇排序 arr2 10,25,7,2,5,1,30,28,21 定義全域性陣列,用於插入排序 temp 0 全域性變數,用於交換數字 氣泡排序 puts 氣泡排序 n begin upto迴...

冒泡 選擇 插入排序

氣泡排序氣泡排序實現記口訣 n個數字來比較外層迴圈n 1,內層迴圈n 1 i public static void main string args for int i 0 ia j 1 第一層 第1次比較 8,7,6,5,4 第2次比較 7,8,6 5,4 第3次比較 7,6,8,5 4 第4次比...

Python實現氣泡排序,選擇排序,插入排序

1.python實現氣泡排序 方法1array 4,5,2,3,8,9,1 def bubblesort array sort true while sort sort false for i in range len array 1 if array i array i 1 temp array ...