n < 100 の場合は n^2 が nlogn よりも高速であり、n >= 100 の場合はその逆であることを理解しようとしています。正しい方向。n < 100 O(n^2) が高速で、n > 100 O(nlogn) が高速であるため、n = 100 で交差するグラフの 2 つの関数を描くことができます。
an^2+b と c*nlog(n)+d を思いついた
ここでの私の理解の鍵は、違いを生む定数です。しかし難しいのは、上記のシナリオを満たす定数を考え出す必要があることです。行われている方法やテクニックはありますか、それとも間違った方向に正しく進んでいますか?
元の質問: James と Brad は、並べ替えアルゴリズムのパフォーマンスについて議論しています。James は、彼の O(N logN) 時間アルゴリズムは、Brad の O(N2) 時間アルゴリズムよりも常に高速であると主張しています。この問題を解決するために、彼らはランダムに生成された多くのデータセットに対して 2 つのアルゴリズムを実装して実行しました。James ががっかりしたことに、N < 100 の場合、O(N2) 時間のアルゴリズムの方が実際には高速に実行され、N >= 100 の場合のみ O(N logN) 時間のアルゴリズムの方が優れていることがわかりました。上記のシナリオが可能な理由を説明してください。数値例を挙げることができます。