1.緒論

香橙雪梨热红茶發表於2024-11-15

1.基本術語

  • 資料項
    (資料項可以是不可分割的原子,也可以由若干資料項構成為具有獨立意義的最小單位)
    (eg.蔗糖原子)
  • 資料元素
    (資料元素是表示資料的基本單位)
    (eg.一顆糖果)
  • 資料物件
    (相同資料元素的集合,資料的子集)
    (eg.糖罐子)
  • 資料
    特點:1.能輸入計算機 2.能被計算機程式識別和處理)
  • 資料結構
    (資料結構是存在關係的資料元素構成的集合)

資料項<資料元素<資料物件<資料
2.三個要素
三要素:邏輯結構,儲存結構,資料運算

邏輯結構 物理(儲存)結構
* 集合結構 * 順序儲存結構
* 線性結構 * 鏈式儲存結構
* 樹形結構
* 圖形結構

(線性:一對一 樹形:一對多 圖形:多對多)
資料運算:是指對資料元素實施的操作,包括運算的定義和運算的實現,運算的定義取決於資料的邏輯結構,運算的實現取決於資料的儲存結構

3.演算法的定義與評價

定義 評價
輸入性 正確性
輸出性 可讀性
確定性 健壯性
可行性 高效性
有窮性

4.演算法的效能分析
分析方法:事後統計法,事前分析法
分析內容:時間複雜度,空間複雜度
(判斷一個演算法的效率時,函式中的常數和其他次要項常常可以忽略,更應該關注主項(最高層階)的階數)

時間複雜度:大O記法

注意不管這個常數是多少,我們都記作O(1),而不能是O(3)、O(12)等其他任何數字,這是初學者常常犯的錯誤。

空間複雜度:S(n)=O(f(n))

相關文章