私は新しい開発者です。アルゴリズム操作の事後分析とアプリオリ分析が何であるかを理解するのを手伝ってください。私はそれをグーグルで検索しましたが、適切な回答が得られませんでした。
6 に答える
アルゴリズムのアプリオリ分析 : 特定のシステムでアルゴリズムを実行する前に、アルゴリズムの分析 (空間と時間) を行うことを意味します。つまり、特定のシステムで実行するのではなく、アルゴリズムを確認するだけで、アルゴリズムの時間と空間の複雑さを判断します (プロセッサとコンパイラが異なります)。
アルゴリズムのアポスティアリ分析 : システムで実行した後にのみアルゴリズムの分析を行うことを意味します。それはシステムに直接依存し、システムごとに変化します。
業界では、ソフトウェアは通常、業界に存在するものとは異なるシステム (Pentium 3 または Pentium 4 などのプロセッサ) で実行される匿名ユーザー向けに作成されるため、Apostiari 分析を行うことはできません。
Apriory では、コンピューターごとに変化する時間と空間の複雑さを決定するために漸近的な表記法を使用する理由ですが、漸近的には同じです。
要するに
事前分析では、アルゴリズムの計算時間を制限する関数を取得します。
事後分析では、実行中のアルゴリズムの時間と空間の消費に関する実際の統計を収集します。
やや長い:
Ans 別の記事の引用
アルゴリズムを分析する最も重要な理由は、アルゴリズムが問題を正しく解決することを確認することです。私たちのアルゴリズムが機能しない場合は、他に何も問題はありません。したがって、それを分析して、常に期待どおりに機能することを証明する必要があります。
また、アルゴリズムの効率も確認する必要があります。これで問題が解決するものの、O(nn) 時間 (または空間!) で解決する場合は、おそらく再設計を検討する必要があります。
ソフトウェア テストの管理 (Peter Farrell-Vinay 著) のセクション 12.7から、アプリオリ分析とは、何らかの理論モデル (Finite State Machine など) を使用して関数を定義する段階です。次に、このモデルを使用して、その機能のさまざまな特性 (時間や空間の使用など) を決定します。
事後段階では、関数の特性 (時間と空間の使用など) の証拠が収集され、事前分析中に計算されたものと比較されます。