塗鴉資料結構3 演算法相關
阿新 • • 發佈:2019-02-01
歡迎轉載,轉載請註明出處
本文地址:http://blog.csdn.net/zhenggaoxing/article/details/42916947
資料結構和演算法的關係
1 資料結構——陣型(排兵佈陣)
2 演算法——戰法——你得知道怎麼打
演算法定義:
1 解決特定問題的求解步驟描述,在計算機中表現為指令的有限序列,並且每條指令表示一個或多個操作
2 什麼意思呢:還是仗怎麼打
演算法四個特性
1 輸入輸出:——有投入,有結果
2 有窮性:——閃電戰——消耗小,速度快,威力大
3 確定性:——戰爭的正義:
4 可行性:——有勝算
演算法效率的度量方法
1 事前分析:運籌帷幄
2 事後統計:馬後炮
之間的優劣大約如下
VS
函式的漸進增長
1 定義:
2 大約就是長頸鹿和梅花鹿是發小,當他們2歲以後梅花鹿就再也看不見長頸鹿的背了
演算法時間複雜度
1定義:
2 解釋:大概意思是核心步驟執行的次數,來衡量演算法的好壞
3 類比:這個其實像極了我們大學考試時候用分數來評價學生的好壞一樣(太庸俗了……)
4 常見T(n)
5 階數比較
最壞情況和平均情況
1 一般指最壞情況
2 平均最有意義
空間複雜度
1 S[n ]=O (f(n))
2 和時間複雜度非常相似 ,只是f(n)代表意義不同:n為問題規模,f(n)佔空間大小