ホームページ >バックエンド開発 >Python チュートリアル >Python で選択ソートを実装するためのガイド
Python を使用して選択ソートを行う方法
選択ソートは単純ですが、非効率的な並べ替えアルゴリズムです。その基本的な考え方は、毎回ソートするデータから最小 (または最大) の要素を選択し、それをソートされたシーケンスの最後に配置することです。すべてのデータが並べ替えられるまで、このプロセスを複数回繰り返します。
以下では、選択範囲の並べ替えに Python を使用する方法を詳しく紹介し、具体的なコード例を示します。
def selection_sort(lst): n = len(lst) for i in range(n-1): min_index = i # 记录当前最小值的索引 for j in range(i+1, n): if lst[j] < lst[min_index]: min_index = j lst[i], lst[min_index] = lst[min_index], lst[i] # 将最小值交换到已排序序列的末尾
lst = [64, 25, 12, 22, 11] selection_sort(lst) print("排序后的列表:", lst)
出力結果は次のとおりです:
排序后的列表: [11, 12, 22, 25, 64]
上記は、選択範囲の並べ替えに Python を使用する具体的なコード例です。コードの実行については、以下でさらに説明します。
選択ソートでは、2 レベルのループを通じて実装します。外側のループは、ソートされていないサブシーケンスから最小の要素を毎回選択する開始位置を制御し、内側のループは、現在のソートされていないサブシーケンス内の最小の要素を見つけるために使用されます。現在の要素と選択された最小の要素を比較することで、サブシーケンス内の最小の要素のインデックスを取得できます。
最小の要素を見つけたら、それを並べ替えられたシーケンスの最後の要素と交換し、最小の要素が並べ替えられたシーケンスの最後に配置されます。このプロセスを繰り返すことで、毎回最小の要素を選択し、並べ替えられたシーケンスの最後に配置することで、順序付きリストが完成します。
選択ソートの時間計算量は O(n^2) であることに注意してください。ここで、n はソートされる要素の数です。効率は比較的低いですが、選択ソートはデータ サイズが小さい場合には依然としてシンプルで実装が簡単なソート アルゴリズムです。
上記の内容が、選択範囲の並べ替えに Python を理解して使用するのに役立つことを願っています。他にご質問がございましたら、お問い合わせください。
以上がPython で選択ソートを実装するためのガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。