選択ソートの基本的な操作は、ソートするデータ要素から毎回最小(または最大)の要素を選択し、ソートするすべてのデータ要素がソートされるまで、ソートされたシーケンスの最後に順番に配置することです。このアルゴリズムは不安定で、追加スペースが O(1)、比較に O(n^2) の時間計算量、スワップに O(n) の時間計算量があり、適応性がありません。ほとんどの場合は推奨されません。これは、スワップの数を減らしたい場合にのみ使用してください。 基本的な考え方 n 個のレコードを持つファイルの直接選択ソートは、n-1 個の直接選択ソートによってソートされ、順序付けられた結果を得ることができます。 ①初期状態:順序付けされていない領域はR[1..n]であり、順序付けされた領域は空である。 ②1次選別 順序付けられていない領域R[1..n]内で最小のキーワードを持つレコードR[k]を選択し、それを順序付けられていない領域の最初のレコードR[1]と交換します。これにより、R[1..1]とR[2..n]は、それぞれレコードが1つ多い新しい順序付けられた領域と、レコードが1つ少ない新しい順序付けられていない領域になります。 … ③ i番目のソート i番目のソートが開始されると、現在の順序付けされた領域と順序付けされていない領域はそれぞれR[1..i-1]とR(1≤i≤n-1)になります。このソートパスは、現在の順序付けられていない領域から最小のキーワードを持つレコード R[k] を選択し、それを順序付けられていない領域の最初のレコード R と交換します。これにより、R[1..i] と R は、それぞれレコードが 1 つ多い新しい順序付けられた領域と、レコードが 1 つ少ない新しい順序付けられていない領域になります。 この方法では、n 個のレコードを持つファイルの直接選択ソートを n-1 回の直接選択ソートでソートして、順序付けられた結果を得ることができます。 コードの実装
選択ソート法はバブルソート法と同じです。最も外側のループは依然として n-1 回実行する必要があり、効率は依然として悪いです。 【編集者のおすすめ】
|
<<: Java ソートアルゴリズムの概要 (パート 3): バブル ソート
11月28日、北京国家会議センターでFlink Forward Asia 2019が開催されました。...
[[433430]] Facebook が名前を Meta に変更し、Metaverse への本格的...
人工知能の波に直面して、マスク氏はついに再び行動を起こした! 7月15日、マスク氏とxAI創設チーム...
AI が生成したデータを使用して AI をトレーニングしても魔法のようには機能せず、逆効果になるだ...
写真ビッグデータダイジェスト制作Michael I. Jordan は、機械学習、確率、統計、グラフ...
2019年2月、ポーランド政府は銀行法に改正を加え、信用判定に否定的な結果が出た場合に顧客に説明を求...
人工知能 (AI) 技術が職場に統合されることにより、仕事の性質が急速に変化し、人間と機械の関係が再...
[51CTO.com クイック翻訳] 強化学習は自律的な意思決定を実現するのに非常に適しています。対...
人類が地球上の食物連鎖の頂点に上り詰め、さらには宇宙の探査を続けられるようになったのは、個人の脳だけ...
[[232541]]最近、アリババDAMOアカデミーの機械知能研究所は、新世代の音声認識モデルDF...
強化学習となると、多くの研究者のアドレナリンが抑えきれないほど湧き上がります!これは、ゲーム AI ...
最近、米国の市場調査機関であるナビガントリサーチが、自動運転の競争力に関する新たなランキングを発表し...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...