算法設計與分析【4】貪心算法

基本思想

通過一系列局部最優的選擇求解問題的整體最優解,即貪心選擇性質。另外貪心法具有最優子結構性質。

影響算法複雜度的因素

  • 貪心選擇性質
  • 最優子結構性質

貪心法適合組合優化問題

經典案例

活動安排

下一個活動的開始時間是否大於等於結束時間,效率高的原因是已經排好序了。貪心算法的整體複雜度是低的。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

最優裝載問題【0-1揹包問題子問題】

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

找零問題

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
補充:
在這裏插入圖片描述

哈夫曼編碼

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

最小生成樹(Prim算法&Kruskal算法)

在這裏插入圖片描述
prim:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
kruskal:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

單源最短路徑(Dijkstra算法)

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

貪心法不一定得到最優解

在這裏插入圖片描述

參考

算法設計與分析mooc

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章