1. 程式人生 > >go實現計數排序演算法

go實現計數排序演算法

前面我們詳細講解了計數排序演算法,今天我們用程式碼來實現

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]

符合預期