go實現計數排序演算法
阿新 • • 發佈:2019-02-02
前面我們詳細講解了計數排序演算法,今天我們用程式碼來實現
package main import "fmt" //計數排序 func countingSort(theArray[] int)[]int{ lastArray := make([]int,len(theArray)) for i := 0; i<len(theArray); i++ { count := 0 for j :=0; j<len(theArray); j++ { if theArray[i] > theArray[j]{ count ++ } } lastArray[count] = theArray[i] } return lastArray } func main() { var theArray = []int{6, 4, 5, 1, 8, 7, 2, 3} fmt.Print("排序前") fmt.Println(theArray) fmt.Print("排序後") arrayResult := countingSort(theArray) fmt.Println(arrayResult) }
我們執行程式,獲得結果
排序前[6 4 5 1 8 7 2 3]
排序後[1 2 3 4 5 6 7 8]
符合預期