**:
測試效能chartosoundex =
def soundex(source):
# ... input check omitted for brevity ...
source = source[0].upper() + source[1:]
digits = source[0]
for s in source[1:]:
s = s.upper()
digits += chartosoundex[s]
優化**2c:\samples\soundex\stage1>python soundex1c.py
woo w000 14.5341678901
pilgrim p426 19.2650071448
flingjingwaller f452 30.1003563302
測試效能def soundex(source):
# ...
source = source.upper()
digits = source[0] + "".join(map(lambda c: chartosoundex[c], source[1:]))
匿名函式的開銷抵消了用過把string作為一組字元進行出來帶來的效能優化c:\samples\soundex\stage2>python soundex2a.py
woo w000 15.0097526362
pilgrim p426 19.254806407
flingjingwaller f452 29.3790847719
優化**3
測試效能source = source.upper()
digits = source[0] + "".join([chartosoundex[c] for c in source[1:]])
可以字串處理最好用listc:\samples\soundex\stage2>python soundex2b.py
woo w000 13.4221324219
pilgrim p426 16.4901234654
flingjingwaller f452 25.8186157738
優化**4
測試效能allchar = string.uppercase + string.lowercase
chartosoundex = string.maketrans(allchar, "91239129922455912623919292" * 2)
def soundex(source):
# ...
digits = source[0].upper() + source[1:].translate(chartosoundex)
string.maketrans建立了字元和數字之間轉換的聯絡,這種資料結構比map要快很多c:\samples\soundex\stage2>python soundex2c.py
woo w000 11.437645008
pilgrim p426 13.2825062962
flingjingwaller f452 18.5570110168
效能調優 nginx優化
nginx是乙個高效能的web和反向 伺服器,有很多優越的特性。在高併發的情況下nginx的一些預設引數並不適用。下面介紹一下nginx優化的幾個方面 1.配置執行緒數和併發數 worker processes 4 cpu 程序數 events2.配置後端server的長連線 upstream se...
Elasticsearch效能調優之慢查詢日誌
es裡面的操作,主要分為兩種,一種寫入 增刪改 另一種是查詢 搜尋 我們分別要識別出來,哪些寫入操作效能比較慢,哪些查詢操作效能比較慢,先要識別出來有效能問題的這些慢查詢,慢寫入,然後才能去考慮如何優化寫入的效能,如何優化搜尋的效能 搜尋慢查詢日誌 無論是慢查詢日誌,還是慢寫入日誌,都是針對shar...
Android效能調優 繪製優化
4.1 開發者中的 過渡繪製 檢測 4.2 開發者中的 gpu 檢測 5.1 布局優化 1.減少介面巢狀,對於負責的view可以使用constraintlayout 2.使用include復用布局 3.使用merge去除多餘層級 4.使用viewstub提高載入速度 按需才載入 顯示 5.減少不必要...