ホームページ >バックエンド開発 >Python チュートリアル >Pythonを使用して選択ソートを実装する方法

Pythonを使用して選択ソートを実装する方法

王林
王林オリジナル
2023-06-10 08:54:252488ブラウズ

選択ソートは単純なソート アルゴリズムであり、その基本的な考え方は、ソートされていない要素の中から最小値を見つけて、それをソートされた要素の最後に置くことです。すべての要素が並べ替えられるまで、このプロセスを繰り返します。この記事ではPythonを使って選択ソートを実装する方法を紹介します。

まず第一に、分類ステップを明確に選択する必要があります。

  1. まず、並べ替えられていないシーケンス内で最小の要素を見つけて、それをシーケンスの先頭に保存します。
  2. 次に、引き続きソートされていない残りの要素の中から最小の要素を検索し、それをソートされたシーケンスの最後に格納します。
  3. すべての要素が並べ替えられるまで、手順 2 を繰り返します。

上記の手順に基づいて、Python を使用して選択並べ替えアルゴリズムの実装を開始できます。

実装手順:

  1. リストをパラメータとして受け取る関数selection_sort()を定義します。
  2. 関数では、for ループを使用してリストを走査し、リストの長さ len(arr) を取得します。
  3. 次に、別の for ループを使用して、ソートされていない配列内の最小の要素を見つけます。
  4. 最小の要素を見つけたら、それを現在のリストの i 番目の要素と交換します。
  5. すべての要素が並べ替えられるまで、手順 3 と 4 を繰り返します。

以下は具体的なコード実装です:

def selection_sort(arr):
    n = len(arr)
    for i in range(n):
        min_idx = i
        for j in range(i+1, n):
            if arr[min_idx] > arr[j]:
                min_idx = j
        arr[i], arr[min_idx] = arr[min_idx], arr[i]
    return arr

上記のコードでは、パラメータとしてリストを受け取る関数selection_sort()を定義しています。 for ループは関数内で使用され、リストを走査してリストの長さを取得します。次に、別の for ループを使用して、ソートされていない配列内の最小の要素を見つけます。最小の要素が見つかったら、それを現在のリストの i 番目の要素と交換します。最後に、すべての要素が並べ替えられるまで手順 3 と 4 を繰り返します。

ここで、selection_sort() 関数を使用してテストできます:

arr = [64, 25, 12, 22, 11]

print("原始数组:")
print(arr)

s_arr = selection_sort(arr)

print("排序后的数组:")
print(s_arr)

出力結果は次のとおりです:

原始数组:
[64, 25, 12, 22, 11]
排序后的数组:
[11, 12, 22, 25, 64]

summary

選択の並べ替えは、シンプルですが非常に効果的なソート アルゴリズムで、その時間計算量は O(n²) です。実際のプログラミング プロセスでは、Python を使用して選択ソート アルゴリズムを実装できます。

上記のデモ コードを通じて、Python による並べ替えアルゴリズムの実装が非常に単純であることがわかります。 Python を学習する過程で並べ替えアルゴリズムに触れたことがない場合は、この記事が役に立つかもしれません。

以上がPythonを使用して選択ソートを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。