演算法2 貪心演算法

2022-04-03 02:12:14 字數 428 閱讀 1590

1.總體描述

貪心演算法總是做出在當前看來最好的選擇,也就是說貪心演算法並不從整體最優考慮,它做出的選擇只是在某種意義上的區域性最優選擇。

2.特點

可以用貪心演算法求解的問題一般具有兩個重要的性質:貪心選擇性質和最優子結構性質

3.貪心演算法和動態規劃的區別

先說一點個人感受。看過動態規劃演算法之後,覺得動態規劃是乙個很巧妙的演算法。看完動態規劃看貪心就覺得貪心演算法太簡單了。貪心只考慮當前狀態下區域性最優解,先不去考慮全域性最優。像小孩子的思路一樣,先把眼下的快樂得到再說。可就是這樣乙個簡單的演算法,它比動態規劃效率更高,而且在他並不時時考慮全域性最優的情況下,使用貪心演算法設計出的許多演算法能導致全域性最優。這就是它的優秀之處,有時候我們處心積慮想得到乙個題目的最優解,不妨讓自己的思路簡單一些,腦海單純一些,也許簡單的未必就不是高效的呢。

4.例子

揹包問題

貪心演算法2

在求最優解問題的過程中,依據某種貪心標準,從問題的初始狀態出發,直接去求解每一步的最優解,通過若干次的貪心選擇,最終得出整個問題的最優解,這種求解方法就是談心演算法。從貪心演算法的定義可以看出,貪心法並不是從整體上考慮問題,它所做出的選擇只是在某中意義上的區域性最優解,而由問題自身的特性決定了該題運...

貪心演算法(2)

題目描述 通過懸崖的yifenfei,又面臨著幽谷的考驗 幽谷周圍瘴氣瀰漫,靜的可怕,隱約可見地上堆滿了骷髏。由於此處長年不見天日,導致空氣中布滿了毒素,一旦吸入體內,便會全身潰爛而死。幸好yifenfei早有防備,提前備好了解藥材料 各種濃度的萬能藥水 現在只需按照配置成不同比例的濃度。現已知yi...

貪心演算法2

太難的題沒有做出來,所以就寫兩道印象較為深刻的題。1.最小新整數 給定乙個十進位制正整數n 0 n 1000000000 每個數字上數字均不為0。n的位數為m。現在從m位中刪除k位 0 include using namespace std char a 1000000000 intmain if ...