日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

贪婪算法回顾

發布時間:2024/8/23 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 贪婪算法回顾 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

回顧

還記的貪婪算法么? 如果你不記得了, 看了下面這個例子你一定會想起來, 因為這個例子太普遍了, 幾乎每個將貪婪算法的地方, 第一個例子都是它, 言歸正傳.

問題: 現在有如下課程表, 要將這些課盡可能多的安排在教室A內.

課程名開始時間結束時間
語文課9:0010:00
數學課9:3010:30
音樂課10:0011:00
政治課10:3011:30
美術課11:0012:00

首先將所有課程都安排在教師A是不現實的, 因為時間上存在沖突. 那改怎么安排呢?

這個問題很難, 對吧. 算了, 至少我第一次看的時候, 完全沒有頭緒. 但看了下面的思路, 你又會發現, 啊?這么簡單么?

具體思路

  • 選出結束時間最早的課程, 將它加到教室A的第一節課
  • 找出在當前教室A最后一節課的結束時間之后開始, 并且結束時間最早的課程, 將其加到教室A的課表中
  • 重復步驟2
  • 經過上面的步驟, 得出的課表為:

    課程名開始時間結束時間
    語文課9:0010:00
    音樂課10:0011:00
    美術課11:0012:00

    如何, 是不是感覺這個算法太簡單了, 簡單到我都不敢相信最終的結果是正確的.

    但是這正是貪婪算法的優點, 簡單, 容易實施.

    貪婪算法的思想就是(個人理解), 每一步都找到當前狀態的最優解, 繼續.

    顯然,貪婪算法并不總是能夠找到最優解

    來了, 又來了, 又是一個被用爛了的例子, 但我就是要用, 哼.

    問題: 現在有一個小偷, 帶著一個可以裝35kg重東西的包包, 他要將最貴重的東西帶走, 那么, 貪婪算法思路如下:

  • 將可裝下的最貴的東西裝入背包
  • 重復步驟1
  • 但是, 如果物品如下:

  • 物品A: 價值300, 重量30kg
  • 物品B: 價值200, 重量20kg
  • 物品C: 價值150, 重量15kg
  • 按照上面的思路, 裝入的內容為: 物品A, 總價值300

    但是, 很顯然, 如果裝入的是: 物品B+物品C, 總價值350

    這時, 貪婪算法找出的就不是最優解了.

    如果換一種思路呢?

  • 將可裝下的最輕的東西裝入背包
  • 重復步驟2
  • 你很驚喜的發現, 結果就是我們要的, 但是, 不好意思, 這只是這種情況下的滿足.

    如果換一種情況呢? 如果物品A價值是500, 其它條件不變呢?

    很顯然, 在這里, 物品有價值和重量兩個值需要考量, 并不能夠單單拿出一個來進行判斷(之前的教室問題只需要考慮時間), 需要綜合考慮.

    其實我個人覺得, 這個例子舉得并不恰當, 這種問題本就不適合使用貪婪算法來進行求解. 但是到處都用這個例子, 那我就用吧, 因為我也想不出更好的例子了…

    最終的結果雖然不是最優解, 但是也比較接近了. 主要是算法簡單啊

    總結

    貪婪算法是不是感覺優點動態規劃的意思? 沒錯, 貪婪算法可以說是動態規劃的一種特例,也就是說, 所有使用貪婪算法能夠解決的問題都可以通過動態規劃來解決, 但是反過來并不成立.

    其實, 貪婪算法個人感覺并不能叫做貪婪算法, 應該叫貪婪思想, 嘿嘿. 因為它并不是一個具體的算法, 而是一種解決問題的思路:

    每一步都尋找當前狀態的最有解(局部最優解), 最終得到的就是由所有局部最優解組成的全局最優解, 或接近全局最優解的解

    有點只顧眼前利益, 不看長遠利益的感覺哈. 這種思路聽起來, 簡單、容易實現, 甚至簡單到讓人懷疑他的正確性, 你的懷疑是對的, 并不是每次局部最優解的組合就是全局最優解, 但他的優點就是簡單啊, 而且對于上面第一個例子中這樣的方法就很好的解決了.

    最后, 貪婪算法, 重點在于一個貪字, 哈哈, 請記住貪婪算法的精髓就是

    總結

    以上是生活随笔為你收集整理的贪婪算法回顾的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。