分割統治、問題の解決方法を教えます!

分割統治

分割統治とは何ですか?

私たちの目の前で、私たちは一連のデータ構造と、並べ替えや検索のアルゴリズムなどの関連アルゴリズムを学習しました。この研究の分割統治は、データ構造でもアルゴリズムでもありませんが、アルゴリズム設計における手法であり、一種の思想として理解できます。このアイデアを使用して、さまざまな種類のアルゴリズムを設計できます。

分割統治とは、問題を元の問題と同様の複数の小さな問題に分割し、その小さな問題を再帰的に解決し、その結果を組み合わせて元の問題を解決することです。主に「分離」「再帰的解決」「結合」の3つに分かれます。

規範事例

シーン 1

マージソート

  • Divide: 配列を真ん中から2つに分割します。
  • 解決策: 2 つの部分配列を再帰的に結合して並べ替えます。
  • 結合: ソートされたサブ配列を結合します。

まず、大きな配列を 2 つの小さな配列に分割し、次にそれぞれの小さな配列を 2 つの小さな配列に分割し、以下同様に繰り返します。最後に、単一要素のすべての小さな配列をマージして並べ替え、最後に大きな配列を形成して問題を解決します。

マージ ソートは、分割統治の考え方の典型的な応用です。

シーン2

クイックソート

  • 分割: ベンチマークを選択し、ベンチマークに従って配列を 2 つのサブ配列に分割します。
  • 解決策: 2 つの部分配列を再帰的にクイックソートします。
  • マージ: 2 つのサブ配列をマージします。

手順はマージソートと似ています。

シーン3

二分探索には「分離」「解」「組み合わせ」という特徴もあります。

元リンク:菜園フロントエンド

おすすめ

転載: blog.csdn.net/qq2603375880/article/details/131749372
おすすめ