今日は、世界で最も遅いソートアルゴリズムである Bogo ソートについてお話ししたいと思います。 では、早速擬似コードを見てみましょう。
このゲームがモンキーソーティングと呼ばれる理由は、猿がキーボードをランダムに長く叩くと、シェイクスピアの詩を入力できるという喩えから来ています。 疑似コードを見ると、中心となる考え方が次のとおりであることが簡単にわかります。 (1)ソートする配列が順序どおりであるかどうかを判定する。順序どおりであれば、完了したソートを返す。 (2)配列が乱れている場合は、配列をランダムにシャッフルする。 (3)(1)を繰り返す。 実行時間が十分に長く、ランダム回数が十分に長い限り、常にソートされた結果が得られます。これは世界で最も遅いソートアルゴリズムとして知られています。 それで、質問は、このソートの用途は何なのかということです。私が思いつくのは、大学のアルゴリズムの授業で時間計算量の導出演習をすること、就職面接で時間計算量の計算を問われること、あるいは自分の知性を誇示するための話題くらいです。それ以外は、何の役にも立たないように思えます。 このソートアルゴリズムの時間計算量はどれくらいですか?簡単に分析してみましょう。 n 個の要素がランダムにシャッフルされた n! の組み合わせがあります。
したがって、ソートが成功すると予想される平均数は次のようになります。 E(X) = 1 回 * 1 回の成功の確率 + 2 回 * 2 回の成功の確率 + 3 回 * 3 回の成功の確率 + ... + k 回 * k 回の成功の確率 + ... 今すぐ: 最後に、大学で学んだ無限級数の数学的知識に基づくと、その時間計算量は O(n*n!) であり、階乗レベルのアルゴリズムであることが「簡単に」わかります。 [この記事は51CTOコラムニスト「58 Shen Jian」によるオリジナル記事です。転載については原作者までお問い合わせください。] この著者の他の記事を読むにはここをクリックしてください |
<<: ロボットは「赤ちゃんを作る」こともできる:世界初の生きたロボットが生命の新たな繁殖方法を生み出す
>>: 人気の説明: キャッシュ、キャッシュ アルゴリズム、キャッシュ フレームワークの概要
1 月 11 日、OpenAI は小規模なセルフサービス チーム専用の新しいサブスクリプション プラ...
今日は畳み込みニューラル ネットワークについてお話します。畳み込みニューラル ネットワークは、主に、...
翻訳者 | 朱 仙中レビュー | Chonglou導入この記事は、ユーザーの好みに合わせてシンプルで...
携帯電話のバスアプリでバス路線 112 の残りの停留所の数を確認するとき、バスに GPS をインスト...
GPT-4 は、詳細かつ正確な画像の説明を生成する強力で並外れた能力を実証しており、言語と視覚処理...
最も先進的な AI テクノロジーは、最も広く使用されているモバイル チップに使用されています。最近、...
[[347829]]私たちが知っているかどうかに関わらず、人工知能 (AI) はすでに私たちの生活の...
「ビッグモデル予選コンペティション」チャットボット アリーナの公式リストが更新されました: Goog...
みんなで思い出すと「サプライチェーン」が浮かび上がる最近、テスラは中国で国産テスラ車の一部をリコール...
インターネットの博物館を作るとしたら、どんな「コレクション」を収蔵しますか?今では、あるプログラマー...
Facebookの公式ブログが更新されました。FAIRのディレクターでディープラーニングの代表である...
10月9日のニュースによると、AIビッグモデルは近年、人工知能の分野で話題になっており、リアルなテ...
情報セキュリティの重要性が高まるにつれ、さまざまなフロントエンド暗号化がますます重要になっています。...