1.快速排序
快速排序就是用遞迴把陣列拆分成最小單元在組合起來
func fastsort(slice int) intindex := len(slice) / 2
value := slice[index]
leftslice := int{}
rightslice := int{}
for i := 0; i < len(slice); i++ else
} return s
}
2.選擇排序
選擇排序找出比當前被比較的值還小的值的索引,進行交換
func selectsort(arr int) int} if minindex != i
} return arr
}
3.氣泡排序
用第n個和n+1進行比較,進行n輪
func bubblesort(slice int) int} }return slice
}
4.插入排序
用i+1個往前和i對比,只要i+1小於i,並且i>0就一直交換下去
func insertsort(arr int) int} return arr
}
5.希爾排序
希爾排序是插入排序的另乙個版本,每次跨度不只是1
func shellsort(slice int) int} }return slice
}
幾種基本的排序演算法
1.氣泡排序 氣泡排序的目標就是通過第一次迴圈將最大 最小 的數找出來,第二次迴圈將次大 次小 的數找出來.氣泡排序在最壞情況下的時間複雜度為o n 2 平均時間複雜度 o n 2 最好情況下的時間複雜度是 o n 演算法穩定。氣泡排序 public class bunnlesort public ...
幾種基本排序演算法的總結歸納
概述 排序有內部排序和外部排序 我們討論的八大排序是內部排序 當n較大時,則應採用時間複雜度為o nlog2n 的排序演算法 快速排序 堆排序或歸併排序。快速排序shimuqian基於比較的內部排序中被認為最好的方法,當待排序的關鍵字是隨機分布時,快速排序的平均時間最短 各種排序的穩定性,時間複雜度...
mysql 幾種排序 MySql的幾種排序方式
資料排序的情況很常見,今天介紹一下mysql的幾種排序方式,是我最近有使用到的,希望能對大家有所幫助。這裡先建立一張普通的表,create table test1 id bigint 20 not null auto increment,name varchar 50 not null,date t...