一. 双重for循环
- 可以在循环中执行循环,称为双重for循环
- 代码示例
for i := 0; i < 2; i++ {
for j := 0; j < 2; j++ {
fmt.Println(i, j)
}
}
- 上面代码中注意:
- 只有当子循环完全执行结束才能再次执行外侧循环.因为循环体执行完才能执行表达式3
二.冒泡排序
- 排序就是把一组数据按照特定的顺序重新排列.可以是升序,降序等
- 冒泡排序利用双重for循环把最大(小)的值移动到一侧,每次可以判断出一个数据,如果有n个数组,执行n-1次循环就可以完成排序
- 排序代码(升序还是降序主要是看if判断是大于还是小于)
arr := [5]int{1, 7, 3, 6, 2}
for i := 0; i < len(arr)-1; i++ {
for j := 0; j < len(arr)-i-1; j++ {
if arr[j] > arr[j+1] {
arr[j], arr[j+1] = arr[j+1], arr[j]
}
}
}
fmt.Println(arr)