以某個值或者值的集合作為輸入,通過計算過程,輸出/產生 某個值或者值的集合。
演算法就是中間轉換過程的計算步驟的序列。
效率隱含的考察物件不同(問題域大小等),演算法優劣也不同。
迴圈不變式,用於幫助我們證明和理解演算法的正確性(可證偽)
迴圈不變式的三條性質:
1、迴圈的第一次迭代前,為真
2、某次迴圈迭代之前為真,下次迭代之前仍為真
3、在迴圈終止時,不變式提供出有用的證明演算法正確性的性質
def insertion_sort_low(l):
l = [l[0]]
for n in l[1:]:
for i, m in enumerate(l):
if n <= m:
l = l[:i] +[n] + l[i:]
break
else:
l = l +[n]
return l
@consuming
def insertion_sort_high(l):
l = [l[0]]
for n in l[1:]:
for i, m in enumerate(l):
if n > m:
l = l[:i] + [n] + l[i:]
break
else:
l = l + [n]
return l
Nodejs入門開發
響應頭 時間 伺服器採用的版本比如apache,編碼型別,超時時間設定等 空行 分割這個響應頭和訊息體 訊息體 相應的具體內容 不同瀏覽器引擎不一樣,但是都是ecma標準。所以可以解析同一段js 安裝xcode 命令 xcode select install 安裝python 安裝homebrew ...
(1)入門 開班
前端學習路上的逆耳忠言 前中期發育 中後期打架 做一件事前70 都是在做無用功 為什麼而學 一鼓作氣,再而衰,三而竭 飯要自己吃,路要自己走 發育階段不要隨便打架 打架的時候別埋頭發育 把每乙個作業腦補成面試官提問 廣度遍歷vs深度遍歷 當你不知道該不該做的時候,先不做 寫部落格學習三 寶 優秀學員...
Spring入門開發
在spring中開發專案,首先引入六個架包 spring aop.jar 開發aop特性時需要的jar spring beans.jar 處理bean spring context.jar 處理上下文的jar spring core.jar spring核心jar spring expression...