《程序員的數學》讀后感


    之前在買書的時候湊單的時候買了一本《程序員的數學》,希望能夠提升一下自己解決問題的能力,數學應該是最鍛煉腦力的學科了。但是當我興沖沖的去翻閱這本書的時候,展現在我面前的內容不是很符合我的要求~一句話,知識太過於基礎。

    我覺得這本書面向的讀者更適合那些剛接觸程序員的人,這樣可以從數學的角度把他們帶入程序的世界,這樣就有不同的思考方式,能夠激起更多的興趣在程序的世界中走的更遠,總的來說是一本非常不錯的“數學書”,因為它不是那么晦澀難懂,沒有啃不動的定理和公式,這樣可以使得你更專注於它傳達的知識。

    保持求知欲是提升解決問題能力的源泉。

    主要內容:

    ”0“--做出簡單規則 , 很多的情況下引入0只是讓規則更加容易的描述。如果能夠擁有一致性的簡單的規則,就更加的便於計算機進行處理。例如按位計數法中的0次冪為1的規則引入。

    ”邏輯“--兩個世界 , 邏輯消除歧義的工具,表述更加嚴格,具有完備性和排他性。關於邏輯的工具有邏輯表達式,真值表,文氏圖,卡諾圖,其中卡諾圖非常適合用來化簡復雜邏輯表達式。

    ”余數“--分組 , 如果碰到一個復雜的問題,可以首先進行逐個計算,是否能夠發現周期性的循環規律,如果可以則可以利用余數的方法縮減問題的規模,復雜問題就得到了簡化。

    ”數學歸納法“--通過2個步驟挑戰無窮 , 數據歸納法在程序正確性驗證中的一個應用就是循環不變式。

   ”排列組合“--關鍵在於認清問題的性質 , 排列,組合,置換等概念。

    ”遞歸“--在自己中找出自己 , 遞歸也是分解,降級問題的一個方法,一個問題必須包含相同結構的小規模問題才是正確的遞歸結構,一定是相同結構的子問題。

    ”指數爆炸” , 指數的增長非常的恐怖,但是指數的下降也可以應用到程序設計中加快程序運行時間,如二分查找。

    “不可解問題”--展示了原理上的界限 

 

    解決問題的能力非常重要,無論數學還是程序應用,解答思考題時,可以首先利用較小的規模試算的方法,發現規律,性質,結構,循環,一致性等。認清隱含在問題中的模式。另外抽象化也是解決問題中重要的概念,只有同樣能夠運用於其他類似問題的方法,才能夠稱為解法。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM