分割統治はアルゴリズム パターンです。アルゴリズム手法では、設計は、巨大な入力に関する議論を取り上げ、入力を小さな部分に分割し、小さな部分のそれぞれについて問題を決定し、次に区分的な解決策をグローバルな解決策にマージすることです。この問題を解決するメカニズムは、分割統治戦略と呼ばれます。
分割統治アルゴリズムは、次の 3 つのステップによる紛争で構成されます。
一般に、次のようにすることができます。 分割統治 3 段階のプロセスでアプローチします。
例: 特定のコンピューター アルゴリズムは、分割統治アプローチに基づいています。
- 最大値と最小値の問題
- 二分探索
- ソート(マージソート、クイックソート)
- ハノイの塔。
分割統治戦略の基本:
分割統治戦略には 2 つの基本があります。
- 関係式
- 停止条件
1. 関係式: それは与えられた技術から生成される公式です。フォーミュラの生成後、D&C 戦略を適用します。つまり、問題を再帰的に分割し、分割された部分問題を解決します。
2. 停止条件: 分割統治戦略を使用して問題を解決する場合、どのくらいの期間分割統治を適用する必要があるかを知る必要があります。したがって、D&C の再帰ステップを停止する必要がある条件は、停止条件と呼ばれます。
分割統治アプローチの応用:
次のアルゴリズムは、分割統治手法の概念に基づいています。
分割統治の利点
- 分割統治は、数学パズルであるハノイ塔などの最大の問題の 1 つをうまく解決する傾向があります。基本的なアイデアのない複雑な問題を解決するのは困難ですが、分割統治アプローチを利用すると、主要な問題を 2 つに分割して再帰的に解決できるため、労力が軽減されます。このアルゴリズムは他のアルゴリズムよりもはるかに高速です。
- 低速なメイン メモリにアクセスする代わりにキャッシュ メモリ内で単純なサブ問題を解決するため、多くのスペースを占有することなくキャッシュ メモリを効率的に使用します。
- これは、対応するブルート フォース テクニックよりも熟練しています。
- これらのアルゴリズムは並列処理を禁止するため、変更を必要とせず、並列処理を組み込んだシステムで処理されます。
分割統治のデメリット
- そのアルゴリズムのほとんどは再帰を組み込んで設計されているため、高度なメモリ管理が必要になります。
- 明示的なスタックはスペースを過剰に使用する可能性があります。
- CPU 内に存在するスタックよりも厳密に再帰が実行されると、システムがクラッシュする可能性もあります。