(5~7)編程小事、程序性能分析及粗略估算

    這幾章是在沒啥總結的,就碼點有意思的話吧。

    1、assert表示我們相信某個邏輯表達式爲真,若表達式爲假則會報告某種錯誤;

    2、得到正確程序需要做的主要有:腳手架、編碼、測試、調試及計時;

    3、想提高程序的性能,可以從以下幾個方面進行入手和綜合考慮:問題定義、系統結構、算法和數據結構、算法調優、數據結構重組、代碼調優、硬件

    4、如果性能問題無法迴避,則在設計層面上進行改進:如果近需要較小的加速,就對效果最佳的層面做改進;如果需要較大的加速,就對多個層面做改進;

    5、粗略估計中有幾個比較有意思的:“72法則”:假設以年利率r%投資一筆錢y年,則根據72法則,如果r*y=72,那麼你的投資差不多會翻倍。72法則用於估算指數過程的增長非常便利;

    6、struct node{ int i; struct node* p;};這個結構我們常理中認爲佔用8字節的空間,而事實上每個節點多佔用了40字節的空間,於是每條記錄就佔用了48個字節,爲啥?;總之我們得爲程序設定一個安全係數,即爲程序的運行時間及空間留出估算出的足夠的冗餘以便進行程序的設計與優化!

    7、Little定律:系統中物體的平均數量等於物體離開系統的平均速率和每個物體在系統中停留的平均時間的乘積。

    8、愛因斯坦說:任何事都應儘量簡單,但不宜過於簡單!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章