1.數據
數據是信息的載體,是描述客觀事物屬性的數,字符及所有能輸入到計算機中並被計算機程序識別和處理的符號的集合。數據是計算機程序加工的原材料。
2.數據元素和數據項
數據元素是數據的基本單位,通常作為一個整體進行考慮和處理。
而數據元素又可由若干的數據項組成,數據項是構成數據元素的不可分割的最小單位。
比如:在一個學生管理系統中,一條學生信息就是一個數據元素,而學生信息中的學號,姓名等就是數據項了
3.數據結構和數據對象
數據結構是相互之間存在一種或多種特定關系的數據元素的集合。
數據對象是具有相同性質的數據元素的集合,是數據的一個子集。
4.數據結構的三要素
邏輯結構,物理結構/存儲結構,數據運算
a.邏輯結構--表示數據元素之間的邏輯關系
分為:集合 線性結構 樹形結構 圖狀結構/網狀結構
集合:各個元素屬於同一個集合
線性結構:元素之間是一對一的關系,除了第一個元素,所有元素都有唯一的前驅,除了最后一個元素,所有元素都有一個唯一后繼
樹形結構:數據元素之間是一對多的關系
圖狀結構:數據元素之間的多對多的關系
b.物理結構/存儲結構----表示計算機怎么表示數據元素的邏輯關系
分為:順序存儲 鏈式存儲 索引存儲 散列存儲
順序存儲:把邏輯上相鄰的元素存儲在物理位置也相鄰的存儲單元中,元素之間的關系由存儲單元的鄰接關系來體現。
鏈式存儲:邏輯上相鄰的元素在物理位置上可以不相鄰,借助指示元素存儲地址的指針來表示元素之間的邏輯關系
索引存儲:在存儲元素信息的同時,還建立附加的索引表。索引表中的每一項稱為索引項,索引項的一般形式是關鍵字+地址
散列存儲:根據元素的關鍵字直接計算出該元素的存儲地址,又稱哈希存儲。
c.數據運算----施加在數據上的運算包括運算的定義和實現。運算的定義是針對邏輯結構的,指出運算的功能;運算的實現是針對存儲結構的,指出運算的具體步驟。
5.數據類型和抽象數據類型
數據類型:是一個值的集合和定義在此集合上的一組操作的總稱。
分為:原子類型----其值不可再分的數據類型,比如int bool
結構類型-----其值可以再分解為若干成分的數據類型, 比如結構體
抽象數據類型(ADT):抽象數據組織及與之相關的操作,是用數學化的語言定義數據的邏輯結構,定義運算與具體的實現無關