今天用python編了乙個斐波那契數列,**如下:
結果執行下去直接不出結果了,嘗試把數值從73改到27後秒執行,看來是數值太大,執行時間過長……def
feb(i:
int)
:if i ==0:
return
1if i ==1:
return
2return feb(i-2)
+ feb(i-1)
(feb(73)
)
python在執行遞迴的時候,每次用到之前的數值,都會重新計算一次……所以才會這麼慢。
將結果放到快取中,可以提高執行速度。
這樣執行73也可以秒出結果了!from functools import lru_cache
@lru_cache(maxsize=
1024
)def
feb(i:
int)
:if i ==0:
return
1if i ==1:
return
2return feb(i-2)
+ feb(i-1)
(feb(73)
)
mysql與ftp連線過慢的原因
解決方式為 1 解除安裝掉dns服務或清除記錄dns快取來解決 2 mysql跳過網域名稱解析 在my.cnf中配置 mysqld skip name resolve 2 ftp跳過網域名稱解析 vsftp.conf中配置 reverse lookup enable no 3 強制解除安裝dns r...
python遞迴函式的執行過程
舉例 def nove n,a,b,c if n 1 print a,c else nove n 1,a,c,b nove 1,a,b,c nove n 1,b,a,c 執行輸出結果 nove 3,a b c a c a b c b a c b a b c a c 執行過程詳解 1 def nove...
DB2 CM資料庫訪問過慢的原因
專案名稱 cm內容管理平台。專案架構 ibm的cm v8.4,was6.1.0.3,db2 9.5 資料庫 cm包含兩資料庫 庫伺服器icmnlsdb 資源管理器rmdb,應用資料庫有bbkp,其中was和rmdb資料庫安裝和儲存在一台伺服器,應用資料庫bbkp和icmnlsdb資料庫在另外一台資料...