PowerShellによる選択ソートのサンプルコード

記事内に広告が含まれています。

PowerShellで選択ソートをするサンプルコードを紹介します。

仕様

PowerShellで配列データを、選択ソートして表示します。

PowerShellは標準でソートの関数が用意されていますが、あえて自力でソートする関数を作成します。

ソースコード

選択ソートする部分をselectionSort関数として別に切り出しました。

テストデータとしてランダムな数字を配列で用意して、ソート前後で表示します。

SelectionSort.ps1

# sort function
function selectionSort($data){
    
    for($i = 0; $i -lt $data.Count - 1; $i++){ # 0 to array.count - 1

        $min = $i; # 最小値
        for ($j = $i+1; $j -lt $data.Count;$j++){
            if($data[$j] -lt $data[$min]){
                $min = $j
            }
        }

        # swap
        $tmp = $data[$i]
        $data[$i] = $data[$min]
        $data[$min] = $tmp

    }
    return $data

}

$array1 = @(100,0,1,75,3,4,50,2,10,2,99,5,8,7,35,4,8)
# ソート前表示
Write-Host "ソート前"
Write-Host $array1

# バブルソート実行
$array2 = selectionSort($array1)

# ソート後表示
Write-Host "ソート後"
Write-Host $array2

Read-Host

テスト実行

実行は右クリックメニューの「PowerShellで実行」をクリックします。

実行するとソート前後の配列を表示されます。

そこから数字が小さい順[昇順]であることが確認できました。

参考情報

環境

下記の環境で作成・実行しております。

No.環境バージョン
1OSWindows10
2PowerShell5.1
環境一覧

以上です。

コメント

タイトルとURLをコピーしました