數據結構緒論
數據結構:是相互之間存在一種或多種特定關係的數據元素的集合。
1. 基本概念和術語
- 數據:可以輸入到計算機中,能被計算機程序處理
- 數據元素:組成數據的有一定意義的的基本單位,在計算機中通常作爲整體處理。也被稱爲記錄。
- 數據項:一個數據元素可以由若干個數據項組成,數據項是數據不可分割的最小單位。
- 數據對象:性質相同的數據元素的集合,是數據的子集。
- 數據結構:相互之間存在一種或多種特定關係的數據元素的集合。
數據項–>數據元素–>(數據對象)–>數據–>數據結構
2. 邏輯結構和物理結構
(1) 邏輯結構:是將數據對象中數據元素之間的相互關係(針對具體問題)
- 集合結構:元素之間是同屬於一個集合的,只有這種關係。
- 線性結構:數據元素之間是一對一的關係。
- 樹形結構:數據元素之間是一對多的關係。
- 圖形結構:數據元素之間是多對對的關係。
(2) 物理結構:是指數據的邏輯結構在計算機中的存儲關係(針對計算機)
- 順序儲存結構:將數據元素存放在地址連續的存儲單元中,數據之間邏輯關係和物理關係是一致的。
- 鏈式存儲結構:將數據元素放在任意的存儲單元中,這組存儲單元可以是連續的,也可以是不連續。
邏輯結構與物理結構 分別面向問題和計算機
順序結構:連續地址塊。
鏈式結構:任意地址
3. 抽象數據類型
- 數據類型:
- 數據類型:一組性質相同的值的集合及定義在此集合上的一些操作的總稱
- 原子類型:不可再分解的基本類型
- 結構類型:由若干類型組合而成,可以再分解的。
例:C語言中變量聲明int a,b,這就意味着給變量a,b賦值不能超出int的取值範圍,變量a和b之間的運算只能是int類型所允許的運算。
抽象:抽象是指抽取出事物具有的普遍性的本質
-
- 抽象數據類型(Abstract Data Type,ADT)
- 一個數學模型及定義在該模型上的一組操作。
體現了程序設計中問題分解,抽象和信息隱藏的特性。
-
標準格式:
ADT 抽象數據類型名
Data
數據元素之間邏輯關係的定義
Operation
操作1
初始條件
操作結果描述
操作2
…
操作n
…
endADT