冒泡排序是一种排序算法.它通过比较两个相邻的算法并将它们交换.直到处于预期的顺序.就像水中上升到水面的气泡的运动一样.其中每个元素在每次迭代中都会移到最后.
1.使用场景:
小数据集:冒泡排序对小数据集特别有效.因为它需要分配的内存小.
近乎排序的数据:大多数数据已经处于正确的位置,冒泡排序算法可以胜过其他排序算法.
教育目的:冒泡排序算法通俗易懂.因此经常用于计算机科学教程.帮助学生理解排序算法原理.
2.实现:
2.1方法:
func BubbleSort(array []int) {
len := len(array)
for i := 0; i < len-1; i++ {
for j := 0; j < len-1-i; j++ {
if array[j] > array[j+1] {
array[j], array[j+1] = array[j+1], array[j]
}
}
}
}
2.2main方法:
array := []int{33, 23, 56, 7, 8, 18, 99, 28}
data.BubbleSort(array)
fmt.Println(array)
}
3.实战:
检查给定数组是否排序.
3.1方法:
len := len(array)
sortFlag = true
for i := 0; i < len; i++ {
for j := 0; j < len-i-1; j++ {
if array[j] > array[j+1] {
sortFlag = false
break
}
}
}
return sortFlag
}
3.2main方法:
array := []int{33, 23, 56, 7, 8, 18, 99, 28}
flag := data.CheckSortArray(array)
fmt.Println(flag)
}
一字一画.是来时路.
如果大家喜欢我的分享的话.可以关注我的微信公众号
念何架构之路