1.什么是貪心算法
貪心算法是在當前情況下做出的最優決定,它只考慮眼前,獲得的是局部的最優解,並且,希望通過每次獲得局部最優解最后找到全局的最優解。
2.貪心算法的特點
a.貪心算法並不保證得到最優解,但是,對於很多問題確實可以求得最優解。
b.貪心算法可能依賴之前作出的決定,但是,不依賴任何將來的選擇或是子問題的解。
c.貪心算法適用於組合優化問題
d.貪心算法的求解過程是多步判斷過程,最終的判斷序列對應於問題的最優解。
e.依據某種 “眼前最好,短視的” (這說明在具體的問題中,有多種不同的貪心策略,我們需要進行可行性的判定)貪 心 選擇性質判斷,性質好壞決定算法的成敗。
f. 貪心法必須進行正確性證明
g.證明貪心法的不正確的技巧: 舉反例。
3.貪心算法的優缺點
算法簡單,時間和空間復雜度低