冒泡排序 Go语言实现经典算法


冒泡排序原理

重复地访问要排序的数列,一次比较两个相邻的元素,如果他们的顺序错误就把他们交换过来。

效率

时间复杂度O(n^2), 空间复杂度O(1),因为存在两两比较,不存在跳跃。
排序时间与输入无关,最好,最差,平均都是O(n^2)

稳定性

冒泡排序是稳定排序

冒泡排序的Go语言实现代码

package main

import "fmt"
import "math/rand"
import "time"

// 冒泡排序
func main(){
    var numArr [10]int
    // 设置随机数种子
    rand.Seed(time.Now().UnixNano())
    // 生成一个随机数组
    for i := 0;i<10;i++{
        numArr[i]=rand.Intn(100)
    }
    fmt.Println(numArr)

    for i := 0; i < len(numArr); i++ {
        for j := 0; j < len(numArr)-1; j++ {
            if numArr[j] < numArr[j+1]{
                numArr[j],numArr[j+1] = numArr[j+1],numArr[j]
            }
        }
    }
    fmt.Println(numArr)
}

本文发表于2019年12月06日 17:15
阅读 2038 讨论 0 喜欢 0

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1