氣泡排序和選擇排序是排序演算法中比較簡單和容易實現的演算法。氣泡排序的思想為:每一次排序過程,通過相鄰元素的交換,將當前沒有排好序中的最大(小)移到陣列的最右(左)端。而選擇排序的思想也很直觀:每一次排序過程,我們獲取當前沒有排好序中的最大(小)的元素和陣列最右(左)端的元素交換,迴圈這個過程即可實現對整個陣列排序。
選擇排序的平均時間複雜度比氣泡排序稍高,下面我們使用go語言進行編寫
func bubble(num int64) int64}//優化不必要的交換
ifflag
}return
num}
func swap(num int64, i int, j int)
func select(num int64) int64}swap(num,local,i)
}return
num}
func swap(num int64, i int, j int)
package mainimport
"fmt
"import
"./sel
"//變數在前,型別在後
func main()
sel.select(num)
for i ,_:=range num
}
go語言實現排序 選擇排序
大家都知道我們一般不會用直接選擇排序,因為時間複雜度比較高,相信大家對直接插入排序都不陌生,就是每次確定乙個當前的最小值或者最大值,我也在這個基礎上進行了一點小改進,即每次都確定乙個最大值和最小值 func selectsort nums int,n int int nums min nums fi...
氣泡排序和選擇排序c語言實現
說明 執行程式先輸入乙個數,為陣列的長度,會隨機生成乙個陣列,然後分貝用選擇排序和氣泡排序實現從小到大的排序.實驗結果 選擇排序演算法,從小到大 int temp 0 for int i 0 i n i 氣泡排序演算法,從小到大 for int i 0 i n i for int i 0 i n i...
演算法 選擇排序(go語言實現)
選擇排序與氣泡排序的時間複雜度相同。因為一直在選擇最小的數字,所以叫選擇排序 理論部分 1,將設陣列0號位為陣列最小值,將其定義為minnum 此時 minnum 5 2,遍歷陣列,將每一項和 minnum 對比,如果小於minnum,則將其與第一項調換位置 並重新賦值 minnum 變換為此時 m...