码迷,mamicode.com
首页 > 编程语言 > 详细

go 冒泡排序

时间:2019-12-21 11:44:20      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:fun   for   int   冒泡排序   make   init   pack   data   排序   

package main

import "fmt"

func main()  {
	a :=[8]int{24,69,80,57,13,1,100}
	//算出a的长度
	//n :=len(a)
    //0 1 2 3
    //冒泡排序
	/*for i:=0;i<5-1;i++ {
       for j:=0;j<5-1-i;j++{
       	  if a[j] > a[j+1]{
       	  	 a[j],a[j+1] = a[j+1],a[j]
		  }
	   }
	}

	fmt.Printf("\n培训后:\n")
	for i:=0;i< 5;i++{
		fmt.Printf("%d\n",a[i])
	}
	fmt.Println()*/

	//升序
   /* n := len(a)
	for i:=0;i<n-1;i++ {
		for j:=0;j<n-1-i;j++{
			if a[j] > a[j+1]{
				a[j],a[j+1] = a[j+1],a[j]
			}
		}
	}*/

	//降序
	n := len(a)
	for i:=0;i<n-1;i++ {
		for j:=0;j<n-1-i;j++{
			if a[j] < a[j+1]{
				a[j],a[j+1] = a[j+1],a[j]
			}
		}
	}


	fmt.Printf("\n排序后:\n")
	for i:=0;i< n;i++{
		fmt.Printf("%d\n",a[i])
	}
	fmt.Println()
}

  

package main

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

func InitData(s []int)  {

	//设置种子
	rand.Seed(time.Now().UnixNano())

	for i:=0;i< len(s);i++{
		s[i]= rand.Intn(100) //100 以内的值
	}

}

//冒泡排序
func BubbleSort(s []int)  {
	 n :=len(s)
	 for i:=0;i<n-1;i++{
	 	for j:=0;j<n-1-i;j++{
	 		if s[j] > s[j+1]{
	 			s[j],s[j+1] = s[j+1],s[j]
			}
		}
	 }
}

func main()  {
	n := 10

	//创建切片
	s :=make([]int,n)
	InitData(s)
	fmt.Println("排序前",s)
	BubbleSort(s)

	fmt.Println("排序后",s)


}

  

go 冒泡排序

标签:fun   for   int   冒泡排序   make   init   pack   data   排序   

原文地址:https://www.cnblogs.com/dqh123/p/12076173.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!