比較ベースのアルゴリズムでは、5 つの要素をソートするのに 7 回のパスが必要だと言われるのはなぜですか?

比較ベースのアルゴリズムでは、5 つの要素をソートするのに 7 回のパスが必要だと言われるのはなぜですか?

結果のソートアルゴリズムの唯一の要件は、オペランドが全順序関係を満たすことです。

  1. a≤b かつ b≤c の場合、a≤c (推移性)。
  2. a または b については、a≤b または b≤a のいずれかです (完全性)。

この質問には情報理論を使って答えることができます。

1 から 5 までの数字を 1 つ選び、それを推測してもらいます。各ラウンドで質問すると、私の答えは「はい」または「いいえ」(1 または 0) です。数字を推測できると保証するには、何ラウンド必要ですか?

このゲームをもっと楽しくプレイするには、まず自分のラッキーナンバー(たとえば私の場合は 7)から推測し、1 つずつ「それは X ですか?」と聞いてみてください。運が良ければ 1 ラウンドで正解できるかもしれませんが、最悪の場合 5 ラウンドかかることもあります。そのため、答えは「少なくとも 5 ラウンド」にする必要があります(実際には、少なくとも 1 ラウンドで正解できる「かもしれませんが」、正解を「確実に」当てるためには、妥協して 5 と答える必要があります)。つまり、この推測方法の最適な下限は 5 です。 (平均パフォーマンスは1×1/5+2×1/5+…+5×1/5=(1+…+5)/5 = 3)

しかし、バイナリのやり方を知っているので、「3より大きいですか?」と尋ねるでしょう...そして、どの数字を選んでも、3ラウンドしかかかりません。バイナリ検索は明らかに優れた戦略ですが、何が優れているのでしょうか? 情報理論を使用して理解する:最大エントロピー

英語版Wikipediaのエントリには、大まかな説明があります: Comparison_sort、最小回数はlog(5!) = 6.91で、これは7に丸められます。

決定木は次のようになります。

マージソートを使用する場合、比較の回数は O(nlogn) になります。これは、マージソートがグローバルな最適解であるためですが、ローカルではマージが常に最適であるとは保証されないためです。

クイックソートの GIF を添付します:

[[110233]]

元のリンク: http://justjavac.com/other/2013/04/10/why-any-sort-algorithm-based-on-the-comparison-of-the-five-elements-are-needed-7-times.html

<<:  コンピューティング技術を変えた偉大なアルゴリズムを数えてみましょう

>>:  SVM のマップ削減データマイニングアルゴリズム

ブログ    

推薦する

...

ニューラルネットワーク関係抽出のための構文的に敏感なエンティティ表現

ニューラル関係抽出のための構文的に敏感なエンティティ表現。関係抽出タスクの大規模な適用における大きな...

ドローンによる食品配達が到来、こうした問題が注目を集めている

無人運転車による配達に続き、ドローンによる食品配達も現実化に向かって加速している。先日終了した202...

NetEase Cloud Music 推奨システムのコールド スタート技術

1. 問題の背景: コールドスタートモデリングの必要性と重要性コンテンツプラットフォームとして、QQ...

試験形式がAIベースになったとき、「AI+教育」の関係をどうバランスさせるのか?

[[237498]]画像出典: Visual China私のクラスメイトの劉一木は留学の準備をして...

2019 年に人工知能アルゴリズムのポジションをめぐる競争がこれほど激しいのはなぜでしょうか?

AI関連の学位取得者は高給を得るのが難しいとメディアが以前報じていたのとは全く対照的に、多くの応募...

誇張ではなく、絶対にそうはならない

[[280896]] 01. はじめにデータのクエリ速度を向上させるために、キャッシュがよく使用され...

組織のサイバーセキュリティ向上における人工知能の役割

サイバーセキュリティは重要な戦略的必須事項となっており、今日の企業は進化し続けるサイバー脅威から I...

もう学べないの? MIT CSおよびEEオンラインコースが利用可能になりました

[[320783]]流行病のため、MIT学長は3月初旬に残りの授業をすべてオンラインに移行するという...

...

医師は患者のがん治療を支援するためにディープラーニングアルゴリズムを使用している

▲ 液体生検は費用対効果が高く、生検全体のプロセスを大幅に簡素化できます。 Wikipedia によ...

人工知能、機械学習、ディープラーニングとは、いったい何なのでしょうか?

近年のホットな言葉といえば、「人工知能」が挙げられます。昨年のChatGPTの人気爆発により、「AI...