空間優化, 時間優化.
目前我們就在pc上,所以主要目標是時間優化.
第一步: 演算法結構層面的優化.
搞懂演算法,從巨集觀層面優化結構,能在乙個層面做的事情,盡量合併一起做!
...
第二步: c語言層面的優化.
從函式,語言層面優化程式!
1.減少記憶體訪問!
2.合併運算!
3.空間換時間!
4.迴圈合併/展開等處理!
5.查表法代替乘法!
...第三步: 彙編層面的優化.
搞清平台特性,根據其特性編寫對應的快速**!
1.減少記憶體訪問!
2.有效利用暫存器!
3.選用合適指令!
4.合理利用堆疊!
...優化是乙個編寫,測試,除錯,再編寫,乙個回歸編寫調整的過程!以上三個步驟
盡量按照順序來做,當然實際優化過程中肯定存在反覆的過程!
比如有可能正在做第三步彙編優化,發現第二步或者第一步不合理,反過來再修改
上一級的步驟!
程式優化總結 萬變不離其宗
程式優化總結 萬變不離其宗 空間優化,時間優化.目前我們就在pc上,所以主要目標是時間優化.第一步 演算法結構層面的優化.搞懂演算法,從巨集觀層面優化結構,能在乙個層面做的事情,盡量合併一起做 第二步 c語言層面的優化.從函式,語言層面優化程式 1.減少記憶體訪問 2.合併運算 3.空間換時間 4....
萬變不離其宗之UART要點總結
首先這玩意兒分兩種 線上空閒 無資料狀態為常高電平,故邏輯低定義為起始位。停止位 波特率 bit rate 就是位 秒的概念,就是1秒傳多少位的概念。常見的波特率有哪些呢?這裡須注意的要點 兩邊分別代表兩個通訊的裝置,單從uart程式設計的角度講收發不需要物理同步握手,想發就發。圖中箭頭代表資料資訊...
李開復 演算法的力量 萬變不離其宗
程式語言雖然該學,但是學習計算機演算法和理論更重要,因為計算機演算法和理論更重要,因為計算機語言和開發平台日新月異,但萬變不離其宗的是那些演算法和理論,例如資料結構 演算法 編譯原理 計算機體系結構 關係型資料庫原理等等 演算法是電腦科學領域最重要的基石之一,但卻受到了國內一些程式設計師的冷落。許多...