Go bubbleSort

GoでBubbleSort(バブルソート)しました。

ソースコード

package main

import "fmt"

func bubbleSort(arr []int) []int {
    for {
        doSwap := false // 入れ替えをしたかどうか
        for i := 0; i < len(arr)-1; i++ {
            for j := i + 1; j < len(arr); j++ {
                if arr[i] > arr[j] {
                    temp := arr[i]
                    arr[i] = arr[j]
                    arr[j] = temp
                    doSwap = true
                }
            }
        }
        if doSwap == false {
            break
        }
    }
    return arr
}

func main() {
    arr := []int{3, 1, 6, 2, 5, 0, 11, 4}
    afterArr := bubbleSort(arr)

    fmt.Println(afterArr)
}

出力結果

[0 1 2 3 4 5 6 11]
スポンサーリンク
レクタングル広告(大)
レクタングル広告(大)

シェアする

  • このエントリーをはてなブックマークに追加

フォローする