貪心算法與動態規划的區別


這個問題是之前考研復試老師問的一個問題,當時答得還不錯。今天刷題后記錄一下。

貪心算法:

  • 基本思想:貪心算法並不從整體最優上加以考慮,它所做的選擇只是在某種意義上的局部最優解。
  • 基本要素:最優子結構性質和貪心選擇性質。

動態規划:

  • 基本思想:將待求解的問題分解成若干個子問題,先求解子問題,然后從這些子問題的解得到原問題的解。
  • 基本要素:最優子結構性質和重疊子問題性質

貪心算法與動態規划的區別:

  • 共同點:兩者都具有最優子結構性質
  • 不同點:
  1. 動態規划算法中,每步所做的選擇往往依賴於相關子問題的解,因而只有在解出相關子問題時才能做出選擇。而貪心算法,僅在當前狀態下做出最好選擇,即局部最優選擇,然后再去解做出這個選擇后產生的相應的子問題。
  2. 動態規划算法通常以自底向上的方式解各子問題,而貪心算法則通常自頂向下的方式進行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM