緒論
基本概念術語
- 數據:描述客觀事物的符號,是計算機中可以操作的對象,是能被計算機識別,並輸入給計算機處理的符號集合
- 數據元素:是組成數據、有一定意義的基本單位,在計算機中通常作爲整體處理。也被稱爲記錄。比如人類中的人,畜類中的牛、羊等。
- 數據項:一個數據元素可以由若干個數據項組成。數據項是數據不可分割的最小單位。、
- 數據對象:是性質相同的數據元素的集合,是數據的子集。
- 數據結構:是相互之間存在一種或多種特定關係的數據元素的集合。
邏輯結構與物理結構
邏輯結構
- 集合結構:集合結構中的數據元素除了同屬於一個集合外,它們之間沒有其他關係。地位平等
- 線性結構:線性結構中數據元素是一對一的關係。
- 樹形結構:數據元素之間存在一種一對多的層次關係。
- 圖形結構:數據元素是多對多的關係。
注意點:
將每個數據元素看成一個節點,用 圓圈表示。元素之間的邏輯關係用節點之間的連線表示,如果有方向,則用帶箭頭的連線表示。
物理結構
物理結構:是指數據的邏輯結構在計算機中的存儲形式。有兩種結構
- 順序存儲結構:是把數據元素放在地址連續的存儲單元裏,其數據間的邏輯關係和物理關係是一致的。數組就是這種存儲結構
- 鏈式存儲結構:是把數據元素存放在任意的存儲單元裏,這組存儲單元可以是連續的,也可以是不連續的。需要使用一個指針存放數據元素的地址。
抽象數據類型
數據類型
數據類型:是指一組性質相同的值的集合及定義在此集合上的一些操作的總稱。
分爲兩種類型:
- 原子類型:不可以再分解的基本類型,包括整型、實型、字符型等。
- 結構類型:由若干個類型組合而成,是可以再分解的。
抽象數據類型
抽象數據類型(Abstract Data Type,ADT):是指一個數學模型及定義在該模型上的一組操作。
抽象數據類型體現了程序設計中問題分解、抽象和信息隱藏的特性。