Go冒泡排序练习

栏目: Go · 发布时间: 6年前

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冒泡排序练习


以上所述就是小编给大家介绍的《Go冒泡排序练习》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Android软件安全与逆向分析

Android软件安全与逆向分析

丰生强 / 人民邮电出版社 / 2013-2 / 69.00元

本书由浅入深、循序渐进地讲解了Android 系统的软件安全、逆向分析与加密解密技术。包括Android软件逆向分析和系统安全方面的必备知识及概念、如何静态分析Android 软件、如何动态调试Android 软件、Android 软件的破解与反破解技术的探讨,以及对典型Android 病毒的全面剖析。 本书适合所有Android 应用开发者、Android 系统开发工程师、Android ......一起来看看 《Android软件安全与逆向分析》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

SHA 加密
SHA 加密

SHA 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换