23_随机数的生成和冒泡排序

时间:2019-08-31
本文章向大家介绍23_随机数的生成和冒泡排序,主要包括23_随机数的生成和冒泡排序使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
package main

import (
	"fmt"
	"math/rand" //随机数生成器包
	"time"
)

//
func main() {

	//先种下一个种子seed
	//rand.Seed(665)//只要随机种子函数里面的参数相同,那么每次产生的随机数是相同的
	rand.Seed(time.Now().UnixNano()) //Unix时间,时间为纳秒,这样生成的随机数每次都不同

	for i := 1; i < 5; i++ {
		//fmt.Println("rand=", rand.Int())    //产生的是大数

		//返回一个取值范围在[0,n)的伪随机int值,如果n<=0会panic
		fmt.Println("rand=", rand.Intn(100)) //产生的是100以内的数
	}

}
运行结果:

//冒泡排序

package main

import (
	"fmt"
	"math/rand"
	"time"
)

func main() {
	rand.Seed(time.Now().UnixNano())

	var a [10]int
	for i := 0; i < len(a); i++ {
		a[i] = rand.Intn(100)
	}
	fmt.Println("原数组为:", a)
	//冒泡排序
	for i := 0; i < len(a); i++ {
		for j := 0; j < len(a)-i-1; j++ {
			if a[j] > a[j+1] {
				a[j], a[j+1] = a[j+1], a[j]
			}
		}
	}
	fmt.Println("排序后数组为:", a)
	//原数组为: [79 17 10 93 20 41 88 75 50 0],排序后数组为: [0 10 17 20 41 50 75 79 88 93]
}

运行结果:

原文地址:https://www.cnblogs.com/zhaopp/p/11439764.html