• <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>

            回溯算法的經(jīng)典例題。大一的時候就有耳聞,卻一直沒有實(shí)現(xiàn),今天終于有機(jī)會把它寫出來,小有成就感啊。
            這里算法采用的是深度優(yōu)先搜索,從第一個節(jié)點(diǎn)開始,按行優(yōu)先的原則逐個掃描每個點(diǎn),如果該點(diǎn)合法,可以選擇放一個queen也可以選擇不放,當(dāng)該點(diǎn)不合法時,就跳過該點(diǎn)接著判斷下一個點(diǎn)。
            有人把回溯算法說成是“萬能算法”,這么說的原因是回溯實(shí)際上就是枚舉,它的最壞情況始終是指數(shù)或階乘級的。對它的優(yōu)化主要體現(xiàn)在約“約束函數(shù)”和“限界函數(shù)”這兩個剪枝函數(shù)上。
            我曾經(jīng)嘗試用回溯寫過背包,結(jié)果是無情的超時,與動態(tài)規(guī)劃的O(NV)來說,回溯O(2^N)的時間復(fù)雜度真是不敢恭維。因此對回溯有些“偏見”。但是前面說過了,回溯的剪枝是很重要的,剪枝函數(shù)做的好可以在實(shí)際中大大降低回溯的時間復(fù)雜度。
            下面是我八皇后問題的代碼:

            看了書上的代碼才發(fā)現(xiàn)自己寫的效率不高。上面我寫的是從棋盤的第一個位置開始,依次判每一個位置。事實(shí)上,只要這一行有皇后,該行的其余地方就不能放了,我之前的做法無疑增加了分支個數(shù)。還有,我的限界函數(shù)寫的太沒技術(shù)含量,看完書上利用斜率寫限界函數(shù)時,真是感覺很慚愧啊。
            以下是書上的經(jīng)典算法,可與上面的算法對比一下,效率差距很明顯。

             

            posted on 2012-05-11 20:24 小鼠標(biāo) 閱讀(406) 評論(0)  編輯 收藏 引用 所屬分類: 回溯
            <2012年5月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            常用鏈接

            隨筆分類(111)

            隨筆檔案(127)

            friends

            最新評論

            閱讀排行榜

            久久久久久精品久久久久| 97久久香蕉国产线看观看| 久久久久人妻一区精品| 久久久精品久久久久久| 亚洲精品无码久久久久去q | 伊人久久大香线蕉AV一区二区| 亚洲精品成人久久久| 久久久精品国产sm调教网站| 国内精品久久久久影院网站 | 97久久超碰成人精品网站| 99久久精品免费看国产| 久久成人国产精品免费软件| 久久久国产精品网站| 国产精品久久婷婷六月丁香| 91麻精品国产91久久久久 | 久久精品国产亚洲麻豆| 久久99这里只有精品国产| 国产精品久久久久乳精品爆| 中文字幕乱码人妻无码久久| 久久精品成人欧美大片| 久久免费高清视频| 久久精品国产亚洲AV无码偷窥| 亚洲午夜福利精品久久| 国产高清美女一级a毛片久久w| 久久大香香蕉国产| 久久久久久久人妻无码中文字幕爆| 久久精品国产精品亚洲艾草网美妙| AV色综合久久天堂AV色综合在| 久久久久久精品久久久久| 女人高潮久久久叫人喷水| 久久免费99精品国产自在现线| 久久免费精品视频| 99久久精品免费国产大片| 久久天堂电影网| 国产成人精品久久一区二区三区av | 久久免费视频观看| 久久精品国产亚洲一区二区| 久久99久久99小草精品免视看| www性久久久com| 亚洲国产天堂久久综合网站| 久久亚洲高清观看|