选择排序

注:本文已发布超过一年,请注意您所使用工具的相关版本是否适用

https://github.com/mohuishou/go-sort

说明

选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小元素,然后放到排序序列末尾。以此类推,直到所有元素均排序完毕。

示例

示例图片

实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package selection

//Sort 选择排序
func Sort(arr []int) {
var LEN = len(arr)
minIndex := 0
for i := 0; i < LEN; i++ {
minIndex = i
for j := i; j < LEN; j++ {
if arr[minIndex] > arr[j] {
minIndex = j
}
}
if minIndex != i {
arr[minIndex], arr[i] = arr[i], arr[minIndex]
}
}
}

关注我获取更新

wechat
知乎
github

猜你喜欢


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议,转载请注明出处,禁止全文转载