go选择排序

package main

import "fmt"

func selectSort(a []int) {
	k := len(a) - 1
	largest := 0
	flag := true
	for i := k; i > 0; i-- {
		largest = 0
		for j := 1; j <= i; j++ {
			if a[j] > a[largest] {
				largest = j
				flag = false
			}
		}
		if flag {
			return
		}
		if largest != i {
			a[largest], a[i] = a[i], a[largest]
		}
	}
}


func main() {
	a := []int{3,2,9,6,5,7,0,1,4}
	selectSort(a)
	fmt.Println(a)
	fmt.Println(a)
}

  

原文地址:https://www.cnblogs.com/xingyunshizhe/p/11329222.html