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

            公告

            記錄我的生活和工作。。。
            <2010年10月>
            262728293012
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            統(tǒng)計(jì)

            • 隨筆 - 182
            • 文章 - 1
            • 評(píng)論 - 41
            • 引用 - 0

            留言簿(10)

            隨筆分類(70)

            隨筆檔案(182)

            文章檔案(1)

            如影隨形

            搜索

            •  

            最新隨筆

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            算法的學(xué)習(xí)zz

            首先寫(xiě)這點(diǎn)東西是為了和大家分享。很多加入群的新人都會(huì)問(wèn)怎么怎么學(xué)習(xí)算法,我也
            常常好為人師去參與解答 , 后來(lái)覺(jué)得應(yīng)該有一個(gè)這樣的東西 。 希望大家能夠在群里面多多討
            論,前一階段忙于各種各樣的事情也是疏于管理,請(qǐng)大家見(jiàn)諒。
            怎么學(xué)習(xí)算法是一個(gè)寬大的話題,人人都有自己的見(jiàn)解 。 我覺(jué)得如果想要學(xué)習(xí)算法,首
            先要知道自己到底處在一個(gè)什么樣的層次上 , 下一步的提高方式是怎么樣的 。 網(wǎng)上有很多算
            法的層次的講解 , 程序員分九等之類的 。 。 。 我只想說(shuō)說(shuō)我的理解 。 其次 , 要知道自己將來(lái)要
            用算法用到多深的程度。
            算法分好多類 , 有傳統(tǒng)意義上的計(jì)算機(jī)的算法 , 有各個(gè)學(xué)科自己的專屬算法 , ( 像 CG 里
            面的 Euler angle 四元數(shù) 轉(zhuǎn)換之類 ) 。 。 。這里僅僅討論傳統(tǒng)意義上的計(jì)算機(jī)的算法。
            首先算法入門(mén)的問(wèn)題當(dāng)然就是各種的排序算法了。這個(gè)在數(shù)據(jù)結(jié)構(gòu)課程上已經(jīng)被講泛濫
            了 。 當(dāng)然僅僅是這么簡(jiǎn)單的問(wèn)題也是能夠看出差別來(lái)的 。 你可以嘗試馬上說(shuō)出各個(gè) 排序 算法
            的核心思想 , 準(zhǔn)確說(shuō)出他們的復(fù)雜度 。 如果都可以 , 那么你可以嘗試證明一下 , 快排為什么
            在概率意義下是 O(nlogn)... 如果這些你都不清楚 。 恐怕你就要從基礎(chǔ)算法開(kāi)始掌握了 。 雖然
            排序簡(jiǎn)單,但是各種排序算法蘊(yùn)含的算法思想不是都那么淺顯易懂的。
            掌握了上述,或許你可以準(zhǔn)備了解一下 Greedy , Divide and Conquer , Dynamic
            Programming 了 , 這些是算法設(shè)計(jì)的經(jīng)典技巧 。 很多一些很難的問(wèn)題 , 都能夠通過(guò)上述技巧非
            常優(yōu)美的解決。舉幾個(gè)經(jīng)典的例子來(lái)看一下具體掌握多少。

             

            貪心:你能馬上回憶起 Huffman 編碼么? M inimum Spanning Tree 的兩種經(jīng)典構(gòu)造呢?
            如果可以,你的貪心算法就算合格了吧。
            Divide and Conquer :馬上想起分治排序 。 (這個(gè)在排序里面你已經(jīng)掌握了) 最近點(diǎn)對(duì)問(wèn)
            題呢??有想法嗎?主定理明白嗎?如果不知道,可以去補(bǔ)一下相關(guān)的知識(shí)。
            DP :曾經(jīng)很多老師告訴我說(shuō), DP 是最不需要技巧的,很多 參加 ACM 的同學(xué)說(shuō) DP 是最
            需要技巧的 。 在我看來(lái) , DP 是一種經(jīng)驗(yàn)類題目 , DP 題目的種類千變?nèi)f化 , 每種 DP 的模型
            都令人拍案叫絕 。 舉 一個(gè)大家普遍都清楚的例子 , 比如說(shuō)矩陣相乘的 DP 解法 , 最短路徑問(wèn)
            題中 Bellford 算法 ( 這個(gè)是我在研究生的時(shí)候,才去仔細(xì)思考的一個(gè)模型,在實(shí)際使用中意
            義重大 ) 等等。
            如果上述都掌握了,說(shuō)明你的算法水平已經(jīng)不錯(cuò)了 。 其實(shí)很多人這些事情都不清楚 , 又
            不愿意畫(huà)時(shí)間去研究,他們討論最多的是算法應(yīng)該怎么學(xué)習(xí),算法書(shū)籍那本好。 ( 也是我現(xiàn)
            在干的 。 。 。 -_-!!) 他們不會(huì)花時(shí)間去研究算法到底是怎么回事 。 我覺(jué)得,學(xué)習(xí)這件事情,自
            己不應(yīng)該成為一個(gè)收藏者,手頭什么都有,卻什么都沒(méi)看。
            掌握了上述 , OK , 的確很不錯(cuò) , 當(dāng)然還有更多 , 單純上述三種算法的話 , 還有很多東西 :
            貪心算法背后的擬陣?yán)碚摚瑒?dòng)態(tài)規(guī)劃的優(yōu)化技巧 ( 四邊形不等式等等 ) 。
            接下來(lái)的一部,我們就要進(jìn)入網(wǎng)絡(luò)流和線性規(guī)劃,這往往也是把很多人擋在算法門(mén)外的
            一堵高墻 。 最大流 , 最小費(fèi)用最大流 , 然后是各種算法 。 。 。 太多了 , 不一一列舉 。 。 。 如果你
            清楚 , 那么你更應(yīng)該清楚的是網(wǎng)絡(luò)流問(wèn)題的轉(zhuǎn)化 。 把各種各樣的問(wèn)題轉(zhuǎn)化為網(wǎng)絡(luò)流 , 轉(zhuǎn)化為
            線性規(guī)劃 。 。

             

            如果上述你也清楚 , 那么或許你應(yīng)該看一下近似算法 隨機(jī)算法和 NP 問(wèn)題等等 。 這三類中

            任何一類都可以寫(xiě)成好幾本書(shū),里面的東西也都是浩如煙海,各種 NPC 問(wèn)題的相互規(guī)約如
            果你能夠搞清楚的話 , 或許你都可以到大學(xué)里面教書(shū)了 。 。 (->-) 。 。 。 這些都是沒(méi)有止境的 。 。 。
            如果上述的你還都清楚的話,你可以嘗試一下 Local Search 或者寫(xiě)幾本關(guān)于近似算法和
            隨機(jī)算法通俗易懂的中文書(shū) 。 。 。或者,把你學(xué)過(guò)的算法都變成高效可移植的代碼和文檔 , 開(kāi)
            源造福后人。
            熟悉上述所有問(wèn)題的,往往都是在某個(gè)領(lǐng)域經(jīng)歷比較久的 人 , 他們大 都轉(zhuǎn)入了特別窄的
            領(lǐng)域進(jìn)行研究了 。 。 。
            有關(guān)算法使用什么書(shū) , 這還是被討論了泛濫的問(wèn)題 , 很多書(shū)都不錯(cuò) , 我只推薦一本書(shū) 《 算
            法設(shè)計(jì) 》 Jon Kleinberg Eva Tardos 等 , 至于說(shuō) 《 算法導(dǎo)論 》 等好不好 , 其實(shí)都挺不錯(cuò)的 ,
            我只是覺(jué)得《算法設(shè)計(jì)》比較適合我。
            算法的練習(xí)場(chǎng)所就更多了 , 各大高校都非常重視的 ACM 競(jìng)賽 , 那 就是一個(gè)很好的鍛煉 練
            習(xí) 場(chǎng)所。 ACM 也訓(xùn)練出了無(wú)數(shù)的算法達(dá)人。推薦 T opcoder 的 Single Round Match 。此外 ,
            一個(gè)更好的練習(xí)是世界各地的 ACM Regional 。當(dāng)然大多數(shù)人都沒(méi)有那么多時(shí)間和興趣去做
            了 。 。 。
            以上就是自己對(duì)算法的一點(diǎn)小的簡(jiǎn)介,有什么錯(cuò)誤和不足請(qǐng)大家指正。

            posted on 2011-01-16 18:30 Sosi 閱讀(1364) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Algorithm

            統(tǒng)計(jì)系統(tǒng)
            久久国产精品视频| 久久综合综合久久97色| 久久露脸国产精品| 久久精品中文字幕一区| 午夜人妻久久久久久久久| 狠狠色丁香婷婷久久综合不卡| 久久国产精品成人免费| 久久精品极品盛宴观看| 国产精品久久久久久福利漫画| 国内精品久久久久久麻豆| 亚洲人成伊人成综合网久久久| 天天爽天天爽天天片a久久网| 精品久久久久久中文字幕大豆网| 国产精品久久久久jk制服| 无码精品久久一区二区三区| 久久婷婷五月综合97色一本一本 | 天堂久久天堂AV色综合| 99久久国产主播综合精品| 亚洲AV无码久久寂寞少妇| 中文字幕一区二区三区久久网站| 久久亚洲私人国产精品| 久久久久久免费视频| 精品熟女少妇aⅴ免费久久| 国产成人久久激情91| 久久久久久精品免费看SSS| 国产综合成人久久大片91| 久久亚洲综合色一区二区三区| AV无码久久久久不卡蜜桃| 亚洲精品无码久久毛片| 欧美色综合久久久久久| 久久se精品一区精品二区国产| 久久青青草原国产精品免费 | 99久久精品无码一区二区毛片 | 四虎国产精品免费久久久| 国产综合久久久久| 久久99精品久久久久久hb无码| 久久精品国产亚洲av麻豆小说| 亚洲va久久久噜噜噜久久狠狠 | 色诱久久久久综合网ywww| 久久精品国产亚洲AV蜜臀色欲| 伊人久久精品影院|