分割統治の思想

基本的な考え方は、分割し、征服することは何ですか?

デザイン分割統治は大きな問題は、直接解決が困難小規模の数と同じ問題に分け、各ブレーク、分割統治するようになりますです。

より正確には、サイズnの問題が分解される Kより小さい下位問題に、元の問題のようなこれらの部分問題独立に同じ。再帰的に解決するため、サブ問題、デマージを元の問題の解を得るために。

分割し、どのような状況の下で征服使用していますか?

問題は、一般的に次のような特徴を持って解決することができる分割統治:

1)問題の大きさを容易に解決することができ、ある程度まで低減されます。

2)問題は、元のように小さな問題と同じ問題の数に分解することができます。

3)分解の問題の解決策を使用して、サブ問題は、問題の解決のために組み合わせることができます。

4)各サブ問題は、問題の分解が独立しているでの、すなわち、サブサブ問題の間で共通の問題が含まれていません。

Baiduのエントリから補足参照(貪欲アルゴリズムと動的なプログラミングを理解したバック習得が容易):

問題の元の溶液に組み合わせることができ、問題の解決は、この機能を持っていない場合は、貪欲法や動的計画法を検討し、非常に重要です。

この時間は、除算を使用して征服することができますが、分割統治の効率特性に関連する独立したサブ問題は、各サブ質問は、不必要な治療、共通のサブ問題の繰り返しソリューションの多くを行うための作業の分割独立していない場合は一般的に良好な動的計画法。

ペアプログラミング経験

彼のチームメイトの表現とコミュニケーションの過程で発生した障害物、クリアする方法を考えるために次のポイント。

私は、将来の結び目でプログラム主に言語能力、他人のコードを読んで理解する能力、デバッグする能力に改善することを願っています。

 

おすすめ

転載: www.cnblogs.com/Texas/p/11681980.html