package main //要求:随机生成5个元素的数组,并使用冒泡 排序 对其排序 从小到大 //思路分析: //随机数用math/rand生成为了更好的保证其不会重复 使用 rand.New(rand.NewSource(time.Now().UnixNano()))并定义一个随机生成函数 //用冒泡排序对其排序 import ( //"math/rand" //"time" "fmt" "math/rand" "time" ) var arrnum [5]int = [5]int{109,137,49,190,87} //定义冒泡函数 //重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z) // 错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成 func BubbleSort( arrary *[5]int){ //第一次比较 fmt.Println("排序前arr=",(*arrary)) tmp :=0 for j := 0 ; j <len(arrary)-1 ;j++{ for i :=0;i <len(arrary)-1-j ;i++ { if arrary[i] > arrary[i+1]{ tmp = arrary[i] arrary[i] = arrary[i+1] arrary[i+1] = tmp } } } fmt.Println("排序后arr=",(*arrary)) } var Arrname [5]int func main() { r := rand.New(rand.NewSource(time.Now().UnixNano()))//生成随机数字 for i := 0; i < len(Arrname) ; i++ { Arrname[i] = r.Intn(20000) //指定生成随机数的范围 } BubbleSort(&Arrname) }
以上所述就是小编给大家介绍的《Go冒泡排序练习》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 排序算法--冒泡排序
- 冒泡排序——重温排序(三)
- 【一起学习排序算法】1.冒泡排序
- 排序算法之冒泡排序改进算法
- 算法之常见排序算法-冒泡排序、归并排序、快速排序
- 图形化排序算法比较:快速排序、插入排序、选择排序、冒泡排序
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。