0

くだらない質問かもしれませんが、どうかご了承ください。

インテリジェント デザイン ソート ( http://www.dangermouse.net/esoteric/intelligentdesignsort.html )に関するこの記事を読んだ後、私はこれが可能であるかどうか疑問に思い始めました。

記事からの抜粋は次のように述べています。

元の入力リストが正確な順序である確率は 1/(n!) です。これが偶然に起こったと言うのは明らかにばかげているほどの可能性が非常に低いため、インテリジェントなソーターによって意識的にその順序に並べられたに違いありません.

少しの間、インテリジェントなソーターのことは忘れて、配列内のメンバーのランダムな出現が何らかの方法でソートされる可能性について考えてみましょう。私たちのアルゴリズムは、配列の構造を変更せずにパターンを決定する必要があります。

これを行う方法はありますか?速度は要件ではありません。

4

2 に答える 2

0

面白い記事、大笑いしました。

あなたが興味を持っている唯一のことListsortedであるかどうかである場合、内部sortedフラグ (true空のリストのデフォルト) を保持し、add()メソッドをオーバーライドして、追加する要素がの順序に適合するかどうかを確認することができますList- つまり、隣接する要素と比較し、sortedフラグを適切に設定します。

于 2016-03-02T11:03:33.110 に答える