*本文笔记参考:b站【尚硅谷】Golang入门到实战教程
1、排序
排序是将一组数据,依指定的顺序进行排列的过程。
-
内部排序
指将需要处理的所有数据都加载到内部存储器中进行排序(包括交换式排序法、选择式排序法和插入式排序法)。
1)交换式排序法
属于内部排序法,是运用数据值比较后,根据判断规则对数据位置进行交换,以达到排序的目的。
-
冒泡排序法(Bubble sort)
一共会经过
arr.length-1
轮比较,每一轮都会确定一个数的位置;每一轮的比较次数都会逐渐减少;
当发现前面的一个数比后面的数大时,就进行交换。
package main import "fmt" func bubbleSort(arr *[5]int) { fmt.Println("排序前的arr:", *arr) for i := 1; i < len(arr); i++ { // 一共经过len(arr)-1轮比较 for j := 0; j < len(arr)-i; j++ { // 每一轮比较len(arr)-i次 if (*arr)[j] > (*arr)[j+1] { (*arr)[j], (*arr)[j+1] = (*arr)[j+1], (*arr)[j] } } }
-