選擇排序與氣泡排序的時間複雜度相同。因為一直在選擇最小的數字,所以叫選擇排序
理論部分:
1,將設陣列0號位為陣列最小值,將其定義為minnum
此時 minnum=5
2,遍歷陣列,將每一項和 minnum 對比,如果小於minnum,則將其與第一項調換位置
並重新賦值 minnum
變換為此時 minnum=4
。。。重複以上步驟
**實現:
// 選擇排序
func
selectsort()
iter_print
(sort_init...
)for i :=
0; i <
len(sort_init)
; i++}}
iter_print
(sort_init...
)}
go語言實現排序 選擇排序
大家都知道我們一般不會用直接選擇排序,因為時間複雜度比較高,相信大家對直接插入排序都不陌生,就是每次確定乙個當前的最小值或者最大值,我也在這個基礎上進行了一點小改進,即每次都確定乙個最大值和最小值 func selectsort nums int,n int int nums min nums fi...
氣泡排序和選擇排序(Go語言實現)
氣泡排序和選擇排序是排序演算法中比較簡單和容易實現的演算法。氣泡排序的思想為 每一次排序過程,通過相鄰元素的交換,將當前沒有排好序中的最大 小 移到陣列的最右 左 端。而選擇排序的思想也很直觀 每一次排序過程,我們獲取當前沒有排好序中的最大 小 的元素和陣列最右 左 端的元素交換,迴圈這個過程即可實...
Go語言實現 常見排序演算法
氣泡排序 時間複雜度 o n 2 穩定性 穩定 氣泡排序 相鄰兩位交換,12交換,23交換,34交換,把最大的數放到最右邊 利用flag標記可以避免無效迴圈 func bubblesort arr int true表示序列已經有序,直接退出,不用繼續迴圈 false表示本次迴圈發生了交換,需要繼續判...