1.1 冒泡排序

未匹配的标注

努力学习算法 Let's go

概念

冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。

动图演示

冒泡排序

执行代码


package main

import (
    "fmt"
)

func bubbleSort(arr []int) []int {
    length := len(arr) //数据总长度(个数)
    for i := 0; i < length; i++ {
        for j := 0; j < length-1-i; j++ {
            if arr[j] > arr[j+1] {//和相邻的比
                arr[j], arr[j+1] = arr[j+1], arr[j] //对换位置
            }
        }
    }
    return arr
}

func main() {
   //切片可以是一个数组 []int [5]int [10]int  不是同一个类型
    arr := []int{99,1,5,7,9,23,4,78,88,66,54,10,12}//切片 一整个数组的切片
    bubble := bubbleSort(arr)
    fmt.Println("bubble:",bubble)
}

执行结果

bubble: [1 4 5 7 9 10 12 23 54 66 78 88 99]

参考LeetCode《代码随想录》及网上资料,code已测试,有问题可评论。保持好的状态,坚持学习,滴水穿石!

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
zhaocrazy
讨论数量: 0
发起讨论 只看当前版本


暂无话题~