什么是主要的算法設計?
主要的算法設計包括分而治之算法、動態(tài)規(guī)劃、貪心算法等。分而治之是一種常見的算法設計,它的思路是把問題分解為與原始問題相似的較小子問題。通常以遞歸方式解決子問題,并結合子問題的解決方案來解決原始問題。
動態(tài)規(guī)劃是一種優(yōu)化技術,用于通過把復雜問題分解為較小的子問題來解決。看上去很像是分治法,但動態(tài)規(guī)劃不是把問題分解為獨立的子問題然后再組合在一起,而是只把問題分解為獨立的子問題。
貪心算法與當前的最優(yōu)解決方案相關,并試圖找到一個全局的最佳方案。與動態(tài)規(guī)劃不同,它不考慮全局。貪心算法傾向于簡單直觀,但可能不是整體最優(yōu)的解決方案。