資料結構與演算法 第一章 資料結構緒論
資料結構與演算法
第一章:資料結構緒論
1.1 資料結構
資料結構:是相互之間存在一種或多種特定關係的資料元素的集合。
資料結構是一門研究非數值計算的程式設計問題中的操作物件,以及他們之間的關係和操作等相關問題的學科
1.2 基本概念和術語
1.2.1 資料
資料:是描述客觀事物的符號,是計算機中可以操作的物件,是能被計算機識別,並輸入給計算機處理的符號集合.*資料不僅僅包括整型、實型等數值型別,還包括字元及聲音、影象、視訊等非數值型別。
1.2.2 資料元素
資料元素:是組成資料的,有一定意義的基本單位,在計算機中通常作為整體處理,也被稱為記錄。
1.2.3 資料項
資料項:一個數據元素可以由若干個資料項組成。資料項是不可分割的最小單位
1.2.4 資料物件
資料物件:是性質相同的資料元素的集合,是資料的子集。
1.2.5 資料結構
結構:在現實生活中,不同資料元素之間不是獨立的,而是存在特定的關係,我們將這些關係稱為結構。
資料結構:是相互之間存在一種好多種特定關係的資料元素的集合。
1.3 邏輯結構與物理結構
1.3.1 邏輯結構
邏輯結構:是指資料物件中資料元素之間的相互關係。
1.集合結構
集合結構:結合結構中的資料元素除了同屬於一個集合外,他們之間沒有其他關係。 各個資料元素是“平等的”,他們的共同屬性是“同屬於一個集合”。
2.線性結構
線性結構:線性結構中的資料元素之間是一對一的關係。
3.樹形結構
樹形結構:樹形結構中的資料元素之間存在一種一對多的層次關係。
4.圖形結構
- 圖形結構:圖形結構的資料元素是多對多的關係。
在用示意圖表示資料的邏輯結構時,要注意兩點:
- 將每一個數據元素看做一個節點,用圓圈表示。
- 元素之間的邏輯關係用借點之間的連線表示,如果這個關係是有方向的,那麼用箭頭的連線表示。
1.3.2 物理結構
物理結構:是指資料的邏輯結構在計算機中的儲存形式。
資料的儲存結構性正確反應資料元素之間的邏輯關係
資料元素的儲存結構形式有兩種:順序儲存和鏈式儲存。
1.順序儲存結構
順序儲存結構:是把資料元素存放在地址連續的儲存單元裡,其資料間的邏輯關係和物理關係是一致的。
鏈式儲存結構:是把資料元素存放在任意的儲存單元裡,這組儲存但願可以是連續的,也可以是不連續的。
邏輯結構是面向問題的,而物理結構就是面向計算機的,其基本的目標就是將資料及其邏輯關係儲存到計算機的記憶體中。
1.4 資料型別
資料型別:是指一組性質相同的值的集合及定義再次集合上的一些操作的總稱
1.4.1 資料型別定義
原子型別:
是不可以在分解的基本型別,包括整型、實型、字元型等。
結構型別:
由若干個型別組合而成,是可以再分解的。例如,整型陣列是由若干整型資料組成的。
抽象是指抽取出事物具有的普遍性的本質
1.4.2 抽象資料型別
抽象資料型別(Abstract Data Type, ADT):一個數學模型及定義在該模型上的一組操作。
一個抽象資料型別定義了:一個數據物件、資料物件中各資料元素之間的關係及對資料元素的操作。
抽象資料型別體現了程式設計中問題分解、抽象和資訊隱藏的特性。
描述抽象資料型別的標準格式
ADT 抽象資料型別名
Data
資料元素之間邏輯關係的定義
Operation
操作1
初始條件
操作結果描述
操作2
......
操作n
......
endADT
資料結構是相互之間存在一種或多種特定關係的資料元素的集合