我在知乎上找有關演算法書的推薦,偶然間找到了這本《演算法導論》。雖然我沒有完全看完,但我還是獲得了一些收穫。
通過閱讀這本書使我更深刻地了解了演算法思想。我了解了書中有關動態規劃、貪心演算法、攤還分析、b樹、斐波那契堆等內容。初次接觸演算法,我感到還是有點困難,尤其是在演算法分析這一塊。一般來說學習演算法,要理解自然語言對演算法的描述,然後是對其進行相應的數學分析,接著是進行設計並實現**。演算法分析是演算法中最難實現的一部分,也是最核心的部分。完成演算法分析基本上就等於解決了問題。演算法分析難在需要不斷地推導、總結,直到得到相應的規律。在這中間,計算是十分關鍵,如果計算失誤,就得不到符合要求的演算法。
在《演算法導論》中,我印象最深刻的對於貪心演算法的分析,如果乙個問題的最優解包含其子問題的最優解,則稱此問題具有最優子結構,這也是能否應用動態規劃和貪心方法的關鍵要素。以活動選擇問題為例,如果乙個子問題sij的最優解包含活動ak,那麼它必然也包含子問題sik和skj的最優解。因此,我們可以得到,如果直到sij的最優解應該包含哪個活動ak,就可以組合ak以及sik和skj的最優解中所有活動來構造sij的最優解。基於對其觀察結果,因此可以用遞迴式來描述最優解。通過演算法解決問題就是那麼巧妙,通過不斷的分析、總結,得到相應規律,從而來解決同類問題。這也使我被演算法的魅力所震撼,演算法是解決很多問題的關鍵,不論使計算機問題還是現實問題。通過高效的演算法,可以使我們的生活變得更便捷。
總的來說,這本書寫的很好,概括了各種演算法問題,分析內容也很詳實,對初學者極其友好。雖然我現在沒有看完這本書,但我以後一定會堅持把它看完。從中多學習演算法,不斷地磨練自己,使自己的技術水平有所提高。作為乙個計算機專業的學生,學習演算法不只是學老師上的演算法課就好了,而是要一直學習演算法。程式設計離不開演算法,不論是在今後學習、工作中,我們還會繼續接觸演算法,正所謂學無止境。希望我在今後也再接再厲,學好演算法,用好演算法。
演算法設計與分析 作業13 讀書筆記
啊哈!演算法 讀書筆記 啊哈!演算法 這本書中的演算法舉例貼近生活,語言詼諧幽默,不會讓人產生枯燥感,並配有很多幽默的插圖。演算法講解通俗易懂,並配有詳細c語言 和注釋,是一本適合初學者學習以及借鑑的演算法書籍。由於時間有限,我簡單花了一些時間閱讀了其中的排序板塊,各種排序演算法層出不窮,一直都是困...
演算法分析與設計實踐 作業13 讀書筆記
我從圖書館借閱了 演算法演化論 一書,此文是我讀後對該書的一些感想。計算機數學是科學計算的一門主體學科,它伴隨著電子計算機的推廣應用而成長壯大,是一門僅有40餘年歷史的新學科。在科學計算蓬勃發展的今天,迫切要求充實完善計算數學的學課體系。翻開科學發展史,可以看到,一門學科的形成可以有不同的方式 方法...
演算法分析與實踐 作業13 讀書筆記
演算法競賽高階指南 讀書筆記 在學習了演算法設計與分析基礎這門課後,我還翻閱了 演算法競賽高階指南 這本書,這本書根據ccf noi資訊學奧利匹克競賽涉及的知識體系進行編寫,對計算機程式設計的基本技能 資料結構與演算法進行了深入的講解。我覺得通過這本書,我了解到的東西還是比較豐富的。比如字典樹的概念...