<style> .font{ font-family:"DFKai-sb",Garamond, serif; padding: 10px; font-size : 115%; line-height: 2; } .titles{ font-family:"DFKai-sb",Garamond, serif; padding: 20px; font-size : 150%; line-height: 2; } .small_title{ font-family:"DFKai-sb",Garamond, serif; padding: 15px; font-size : 130%; line-height: 2; } </style> <font class = "font">和 DP 一樣,Greedy 常常被用來解決 " 最佳化問題 ",只是更加直覺,選的是**當前最佳選擇**。</font> ### <font class = "font">Greedy 的適用性問題</font> &nbsp;&nbsp;<font class = "font">在討論 greedy 時,最大的問題是**是否所有問題都適用 Greedy 的概念?** 顯然不是,greedy 就像是取機器學習中梯度下降演算法的 **local minimum**,因此很容易忽略全局最佳解,舉個例子:</font> ![](https://hackmd.io/_uploads/SkRyXD_th.png) ( 圖片來自:https://ghresource.mt.ntnu.edu.tw/uploads/16551853210675SGLMg3p.pdf) <font class = "font">問題:請問從 A 點繞所有城市回到 A 的最小路程是多少?</font> <font class = "font">用 greedy 跑出來會是 13,但答案是 11</font> <font class = "font">不過由於設計上直覺,如果遇到不會的題目,而又剛好可以判斷該題屬於**最佳化問題**的話,砸 greedy 碰碰運氣也是不錯的。</font> ## <font class = "font">題目練習</font> #### <font class = "small_title">1.漂亮女朋友的回家時間(誰先晚餐問題)</font> <font class = "small_title">筆記區:</font> >https://hackmd.io/@rickrool/rylqY4nS3 --- #### <font class = "small_title">2. 生產線</font> <font class = "small_title">筆記區:</font> >https://hackmd.io/@rickrool/r1abbCreT --- #### <font class = "small_title">3. 線段覆蓋長度</font> <font class = "small_title">筆記區:</font> >https://hackmd.io/@rickrool/rkSVFlrr3 --- #### <font class = "small_title">4. Scarecrow</font> &nbsp;&nbsp;&nbsp;&nbsp; <font class = "font">很好展現 greedy 威力的題目。</font> <font class = "small_title">筆記區:</font> >https://hackmd.io/@rickrool/rJNnioJXn