300 ms
            
            状態: アイドル
比較回数: 0
交換回数: 0
現在のステップ: -
バブルソートとは?
バブルソートは、隣接する要素を比較し、順序が間違っていれば交換する操作を繰り返す単純なソートアルゴリズムです。リストの末尾から最大の要素が「泡(バブル)」のように浮き上がってくるように見えます。
                    色分け:
                     通常
                     比較中
                     交換中
                     ソート済み
                
コード実行状況
def bubble_sort(arr):
    n = len(arr)
    # n 回のパスを実行 (最適化のため早期終了あり)
    for i in range(n):
        swapped = False
        # 各パスで隣接要素を比較 (末尾のソート済み要素は除く)
        for j in range(0, n - i - 1):
            # 現在の要素と次の要素を比較
            if arr[j] > arr[j + 1]:
                # 要素が逆順なら交換
                arr[j], arr[j + 1] = arr[j + 1], arr[j]
                swapped = True
        # このパスで交換がなければ、ソート完了
        if not swapped:
            break # ループを抜ける
    # ソート済み配列 (この関数では返さないが...)
    # return arr
                コード説明
コントロールボタンでソートを開始してください。