幾種基本排序

2022-06-19 02:36:10 字數 813 閱讀 3951

1.快速排序

快速排序就是用遞迴把陣列拆分成最小單元在組合起來

func fastsort(slice int) int 

index := 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...