私はData Structures and Algorithmsの注釈を使い、Time ComplexityとBig-O表記に関する次の例を見つけました:実行された操作の数を数えます各行。私は、最初の例のほとんどすべての行が2の倍数を前に持っているのに対し、他の2つの例はそうでないことを理解できませんでした。明らかに、これは結果として得られるO(n)には影響しませんが、2がどこに来たか知りたいと思っています。アルゴリズムのステップ数を調べる
0
A
答えて
1
私は、スライドの作成者の怠慢の1つしか説明できません。
適切な分析では、どのような操作がどの入力時に実行されるのかを説明しなければなりません(たとえば、、21ページ)。これがなければ、2つの数の乗算を1演算または2演算と数えるかどうかを確かめることさえできません。
これらのスライドは矛盾しています。例:
スライド1では、currentMax = A[0]
は2回の操作を実行します。 1つの操作として配列内の0番目の要素を見つけて、もう1つの要素として割り当てることができればよいのです。しかし、slide3 n
の反復では、s = s + X[i]
はn回の操作を必要とします。つまり、s = s + X[i]
には1回の操作が必要です。また、1つのカウンタを増やしても意味があります。
しかし、それはa = X[0]
が2回の操作であることを理にかなっていない、とあなたがより多くを行うa = a + X[0]
は本当に奇妙に見えるそれだけで1
関連する問題
- 1. タイムピッカー調整分ステップ
- 2. アルゴリズムのステップ数を示す正確な関数を見つける
- 3. 画像認識アルゴリズムの学習ステップ
- 4. ラムダ内のパラメータの数を調べる
- 5. MongoObservable.Collection内のドキュメントの数を調べる
- 6. アルゴリズムのカーネルパラメータを調整する
- 7. ペリカンの変数を調べるには
- 8. 子プロセスの数を調べる
- 9. Solrインデックスでのトータルカウント数を調べる
- 10. 文書の配列数を調べる
- 11. 各レベルの学生数を調べる
- 12. jsonオブジェクトの要素数を調べる
- 13. ASP.NETディレクトリのファイル数を調べる
- 14. PHP、DOM、XPathのノード数を調べる
- 15. 複数の値を調べる小枝
- 16. 数字の威力を調べる
- 17. 関数スコープの値を調べる
- 18. Aprioriアルゴリズム反単調対単調性
- 19. ジェネリック型の配列がMaxHeapであるかどうかを調べるアルゴリズム
- 20. イベントの日付に基づいて日付の範囲を調べるアルゴリズム
- 21. アナグラムがパリンドロームかどうかを調べる最良のアルゴリズムは何ですか?
- 22. ゲームを解決するためのアルゴリズム「Pop it」以上のステップ
- 23. アルゴリズムの反復関係を作るための計算ステップ
- 24. PHP fgetcsv() - カラム数を調べる
- 25. NSMutableArrayで観測数を調べる
- 26. 数値Xが任意の威力であるかどうかを調べるアルゴリズム
- 27. アルゴリズム - 番号がすでにリストにあるかどうかを調べる
- 28. 要素の数を持つ行数/列数を調べる
- 29. node.jsのコンストラクタに入る引数の数を調べるには
- 30. forループの整数が偶数か奇数かを調べる
がかかるので、それは、お互いに完全に矛盾しています。他のスライドや写真がなければ、それは私にとってはあまり意味がありません。たぶん、これらの写真には何かがありません。 (最初の入力+出力の説明もありません)。しかし、スライドとの互換性がない唯一の可能な説明は、アルゴリズム1が最大値と最小値を一緒に計算している場合です。 – sascha
多分、彼らは彼らがビッグオーについて話すことになっていたことの半分を理解したでしょう。そうでなければ私は理由を見ません2 –
いくつかのO記法を取り除いても、それは可変増分(incカウンタ)が* 1ステップ*以上であることは意味がありません。 – sascha