算法之选择排序算法(golang)

来源:互联网 发布:学python和java哪个好 编辑:程序博客网 时间:2024/06/05 07:27

直接上代码:核心思想就是每一次比较都把最小的值放到前面

package mainimport "fmt"func swap(i, j int, a []int) {    a[i], a[j] = a[j], a[i]}func SelectSort(a []int) {    if len(a) == 0 {        return    }    length := len(a)    // for v,k:= range a{    // }    for i := 0; i < length-1; i++ { //最后一次 不用比较了        for j := i; j < length; j++ {            if a[i] > a[j] {                swap(i, j, a)            }        }        fmt.Println(a)    }}func main() {    a := []int{98, 3, 56, 23, 45}    SelectSort(a)}

结果

selectSort time go run select_sort.go [3 98 56 23 45][3 23 98 56 45][3 23 45 98 56][3 23 45 56 98]go run select_sort.go  0.15s user 0.08s system 110% cpu 0.204 total
原创粉丝点击