一,概述
如果要提高軟體的效能,需要從下面幾個方面入手:
1、演算法與資料結構
2、演算法調優
3、資料結構重組
4、與系統無關的**的調優(float取代double)。
5、與系統相關的調優,把經常使用的函式進行加速,比如關鍵**使用彙編代替高階語言
6、硬體上使用浮點加速器。
二,習題
2)因子分解
例題:大於1的正整數n可以分解為:n = x1*x2*...*xm。
例如:當n = 12時,共有8中不同的分解式:
12 = 12;
12 = 6 * 2;
12 = 4 * 3;
12 = 3 * 4;
12 = 3 * 2 * 2;
12 = 2 * 6;
12 = 2 * 3 * 2;
12 = 2 * 2 * 3;
程式設計任務:
對於給定的正整數 n, 程式設計計算n共有多少種不同的分解式。
input
有多組輸入資料,每組資料的一行,為乙個正整數n( 1 < = n < = 2000000000 )。
output
輸入計算出的分解式的數目。每組資料後輸出乙個回車。
sample input
12sample output
8測試可以輸出每個等式的程式(12 = 12需要手動輸出,程式沒給出)
僅僅返回個數的程式(遞迴呼叫)
6)效率永遠排在正確性後面?
乙個大型程式,今天有10個已知的錯誤,下個月又會有10個新的錯誤。如果讓你在更改當前10個錯誤和使程式提速10倍,你會選擇哪乙個?
程式設計珠璣 第六章 程式效能分析
一,概述 如果要提高軟體的效能,需要從下面幾個方面入手 1 演算法與資料結構 2 演算法調優 3 資料結構重組 4 與系統無關的 的調優 float取代double 5 與系統相關的調優,把經常使用的函式進行加速,比如關鍵 使用彙編代替高階語言 6 硬體上使用浮點加速器。二,習題 2 因子分解 例題...
程式設計第六章總結
一 主要內容摘要 1 for語句 for 表示式1 表示式2 表示式3 迴圈體語句 用途 在迴圈頂部進行迴圈條件測試,如果迴圈條件第一次迴圈就為假,則迴圈體一次也不執行,即用於實現當型迴圈控制結構。適用於迴圈次數已知 技術控制的迴圈。例 輸出1 100之間所有偶數 include using nam...
高效能MySQL 第六章
查詢優化 索引優化 庫表結構優化 優化查詢嗎,實際上是優化其子任務。優化查詢 1。消除子任務 2。減少子任務執行次數 3。讓子任務執行的更快 查詢效能低下最基本的原因是訪問的資料太多。1 返回的結果 limit,避免返回不需要的資料 而不是返回全部結果集 select 是否需要返回全部列?2 掃瞄的...