[アルゴリズム]2週目の1回目の実行時
3082 ワード
Chap01. Analyzing Algorithms and Promblems: Principles and Examples
Anylyzing Algorithms and Problems
アルゴリズムの原因を分析する:複数のアルゴリズムからどのアルゴリズム(ユーザー)を選択するか、または既存のアルゴリズムを改善するかを決定する(研究開発)
Correctness
Input(precondition)をoutput(postcondition)に変換する操作(演算子)/命令(コマンド)/文(ステップ)
inputが条件/アルゴリズムを満たす場合/outputは条件を満たさなければならない
Amount of work done
-ワークロードの測定時に効率を測定できる
-コンピュータ、言語、プログラマーによって異なります.
-主にinputsizeに依存
-基本操作を選択してクリーンアップn
Worst-Case Complexity
t(I)はbasic操作の数である
Average Complexity
pr(I)は、I発生確率を入力する統計値または仮定である
Example::Search in an Unordered Array int seqSearch(int[] E, int n, int K)
int ans, index;
ans = -1; // Assume failure.
for (index = 0; index < n; index++)
if (K == E[index])
ans = index; // Success!
break; // Done!
return ans;
Space Usage and Simplicity
空間がinputによって決定されると,最悪の場合と平均的な場合の解析が可能になる.
ほとんどの場合、TimeとSpace Tradeoff
int seqSearch(int[] E, int n, int K)
int ans, index;
ans = -1; // Assume failure.
for (index = 0; index < n; index++)
if (K == E[index])
ans = index; // Success!
break; // Done!
return ans;
-アルゴリズムの正確性の証明が容易
-
最適
すべての問題に固有の複雑さがあります.最小ワークロードが決定されました.
「問題を解決するにはどのくらいの演算が必要ですか」
最適化は,既知+将来開発されるアルゴリズムにおいて最適な状態にあることを意味する.
Reference
この問題について([アルゴリズム]2週目の1回目の実行時), 我々は、より多くの情報をここで見つけました https://velog.io/@dkswlgus00/알고리즘-2주차-1차시テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol