• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            貪心法的基本思路:  
               
              從問題的某一個初始解出發(fā)逐步逼近給定的目標(biāo),以盡可能快的地求得更好的解。當(dāng)達(dá)到某算法中的某一步不能再繼續(xù)前進(jìn)時,算法停止。  
              該算法存在問題:  
              1.   不能保證求得的最后解是最佳的;  
              2.   不能用來求最大或最小解問題;  
              3.   只能求滿足某些約束條件的可行解的范圍。 實現(xiàn)該算法的過程:  
              從問題的某一初始解出發(fā);
              
              while   能朝給定總目標(biāo)前進(jìn)一步   do  
              求出可行解的一個解元素;  
              由所有解元素組合成問題的一個可行解

            貪心算法最經(jīng)典的例子,給錢問題。  
              比如中國的貨幣,只看元,有1元2元5元10元20、50、100  
               
              如果我要16元,可以拿16個1元,8個2元,但是怎么最少呢?  
              如果用貪心算,就是我每一次拿那張可能拿的最大的。  
              比如16,我第一次拿20拿不起,拿10元,OK,剩下6元,再拿個5元,剩下1元  
              也就是3張   10、5、1。  
               
              每次拿能拿的最大的,就是貪心。  
               
              但是一定注意,貪心得到的并不是最優(yōu)解,也就是說用貪心不一定是拿的最少的張數(shù)  
              貪心只能得到一個比較好的解,而且貪心算法很好想得到。  
              再注意,為什么我們的錢可以用貪心呢?因為我們國家的錢的大小設(shè)計,正好可以使得貪心算法算出來的是最優(yōu)解(一般是個國家的錢幣都應(yīng)該這么設(shè)計)。如果設(shè)計成別的樣子情況就不同了  
              比如某國的錢幣分為   1元3元4元  
              如果要拿6元錢   怎么拿?貪心的話   先拿4   再拿兩個1     一共3張錢  
              實際最優(yōu)呢?   兩張3元就夠了  


            求最優(yōu)解的問題,從根本上說是一種對解空間的遍歷。最直接的暴力分析容易得到,最優(yōu)解的解空間通常都是以指數(shù)階增長,因此暴力窮舉都是不可行的。
            最優(yōu)解問題大部分都可以拆分成一個個的子問題,把解空間的遍歷視作對子問題樹的遍歷,則以某種形式對樹整個的遍歷一遍就可以求出最優(yōu)解,如上面的分析,這是不可行的。
            貪心和動態(tài)規(guī)劃本質(zhì)上是對子問題樹的一種修剪。兩種算法要求問題都具有的一個性質(zhì)就是“子問題最優(yōu)性”。即,組成最優(yōu)解的每一個子問題的解,對 于這個子問題本身肯定也是最優(yōu)的。如果以自頂向下的方向看問題樹(原問題作根),則,我們每次只需要向下遍歷代表最優(yōu)解的子樹就可以保證會得到整體的最優(yōu) 解。形象一點說,可以簡單的用一個值(最優(yōu)值)代表整個子樹,而不用去求出這個子樹所可能代表的所有值。
            動態(tài)規(guī)劃方法代表了這一類問題的一般解法。我們自底向上(從葉子向根)構(gòu)造子問題的解,對每一個子樹的根,求出下面每一個葉子的值,并且以其中 的最優(yōu)值作為自身的值,其它的值舍棄。動態(tài)規(guī)劃的代價就取決于可選擇的數(shù)目(樹的叉數(shù))和子問題的的數(shù)目(樹的節(jié)點數(shù),或者是樹的高度?)。
            貪心算法是動態(tài)規(guī)劃方法的一個特例。貪心特在,可以證明,每一個子樹的根的值不取決于下面葉子的值,而只取決于當(dāng)前問題的狀況。換句話說,不需 要知道一個節(jié)點所有子樹的情況,就可以求出這個節(jié)點的值。通常這個值都是對于當(dāng)前的問題情況下,顯而易見的“最優(yōu)”情況。因此用“貪心”來描述這個算法的 本質(zhì)。由于貪心算法的這個特性,它對解空間樹的遍歷不需要自底向上,而只需要自根開始,選擇最優(yōu)的路,一直走到底就可以了。這樣,與動態(tài)規(guī)劃相比,它的代 價只取決于子問題的數(shù)目,而選擇數(shù)目總為1。


            Posted on 2008-11-18 11:20 micheal's tech 閱讀(3520) 評論(0)  編輯 收藏 引用 所屬分類: Algorithm
            久久午夜无码鲁丝片| 麻豆AV一区二区三区久久| 久久精品国产亚洲网站| 99国产精品久久| 色综合久久中文字幕综合网| 亚洲国产成人精品91久久久| 精品久久久无码21p发布| 国产精品久久久久jk制服| 精品久久久久久无码国产| 国产69精品久久久久9999APGF | 精品久久久噜噜噜久久久| 久久亚洲国产午夜精品理论片| 伊人久久亚洲综合影院| 久久99精品国产| 狠狠色婷婷久久一区二区 | 久久青青国产| 色综合久久无码中文字幕| 99久久精品免费看国产| 亚洲国产精品无码久久SM| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 日本强好片久久久久久AAA| 久久精品国产国产精品四凭| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 97精品伊人久久大香线蕉app| 久久嫩草影院免费看夜色| 狠狠狠色丁香婷婷综合久久五月| 日本欧美国产精品第一页久久| 亚洲国产成人久久综合碰碰动漫3d | 亚洲欧美精品伊人久久| 亚洲精品乱码久久久久久按摩 | 久久久精品人妻一区二区三区蜜桃| 久久久久国产精品三级网| 青青国产成人久久91网| 国产精品免费福利久久| 伊人久久精品无码二区麻豆| 久久综合九色综合欧美就去吻| 国产精品成人无码久久久久久 | 狠狠色丁香久久综合五月| 婷婷久久久亚洲欧洲日产国码AV| 无码任你躁久久久久久老妇App| 人妻丰满?V无码久久不卡|