氣泡排序,使用語言python
def bubblesort(lists):count = len(lists)
for i in range(0,count):
for j in range(0,count-i-1):
if lists[j] > lists[j+1]:
lists[j],list[j+1] = lists[j+1],list][j]
推導:[2,10,8,6]
i 的範圍 0~3,執行4次
j 的範圍 0~3-i-1
第一: [2,8,6,10]
第二: [2,6,8,10]
第三: [2,6,8,10]
第四: [2,6,8,10]
1 #coding: utf-82#選擇排序,使用語言python
3 #【2,10,8,6】4
#基本思想,在待排序記錄中r,r[min_index]選出最小的記錄,如果r[min_index]大於r,則進行交換。
5def selectsort(lists):
6 count =len(lists)
7for i in range(0
,count):
8 min_index =i
9for j in range(i+1
,count):
10if lists[min_index] >lists[j]:
11 lists[min_index],lists[j] =lists[j],lists[min_index]
12return
lists
1314
#插入排序,使用語言python
15#基本思想:將乙個資料插入到有序的數列中,直至該數列完全有序
16def insertsort(lists):
17 count =len(lists)
18for i in range(1
,count):
19if lists[i-1] >lists[i]:
20 key =lists[i]
21 j = i - 1
22while j >= 0 and lists[j] >key:
23 lists[j+1] =lists[j]
24 j -= 1
25 lists [j + 1] =key
26return
lists
2728
if __name__ == "
__main__":
29#選擇
30 lists = [2,10,8,6
]31 lists =selectsort(lists)
32print(lists)
3334
#插入35 lists = [2,10,8,6
]36 lists =insertsort(lists)
37 print(lists)
氣泡排序,選擇排序,插入排序
氣泡排序,選擇排序,插入排序 小規模的檔案以及基本有序的檔案,插入排序的效能比快速排序的效能更為有效一些,實際上,插入排序通常也做快速排序實現的一部分。1 氣泡排序 packagedatastrut public classbubblesort public voidinsert longvalue...
選擇排序 , 插入排序 , 氣泡排序
編寫 include void println int array,int len 列印給定長度的陣列 printf n void swap int array,int i,int j 交換陣列中兩個位置的元素 void selectionsort int array,int len o n n 對...
氣泡排序 插入排序 選擇排序
氣泡排序是每輪比較未排序部分,從第乙個元素開始找最值,比較相鄰數字,依次往後推移,最終將最值置於最右。假設有n個數,外迴圈迴圈n 1遍,內迴圈是n 1在減去當前是第幾次外迴圈。void bubble sort mytype a,int n n為陣列長度 插入排序是從第二個元素開始快取,然後向前比較,...