Divide and Conquer - 分而治之

Posted by Alan Zhan on Wednesday, July 7, 2021

分而治之

從字面上看起來,就是把一個複雜的問題分解成兩個或者很多個相同或者相似的問題,讓小問題可以被解決,再將最終結果合併求出問題的答案。

優點

  1. 解決問題的難度降低。
  2. 可以提升執行效率。
  3. 有些時候能夠平行處理,增進性能。

使用步驟

  1. 分解:將一個問題分解成若干個較小的問題,相對獨立,與原先問題形式相同的子問題。
  2. 解決:若子問題規模較小並且容易解決時,就直接解決。否則,就遞迴的方式解決子問題。
  3. 合併:將個子問題的解合併成為原問題的解。

Resources:

歡迎到我的 Facebook Alan 的筆記本 留言,順手給我個讚吧!你的讚將成為我持續更新的動力,感謝你的閱讀,讓我們一起學習成為更好的自己。