1. 程式人生 > 其它 >資料結構與演算法 第一章 資料結構緒論

資料結構與演算法 第一章 資料結構緒論

本人的內容來自於《大話資料結構》,也希望通過自己的學習和理解,幫助大家過一下基礎性,也希望大佬指出自己的筆記不足,更好的為大家服務,和提高自身的能力

資料結構與演算法

第一章:資料結構緒論

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. 圖形結構:圖形結構的資料元素是多對多的關係。

在用示意圖表示資料的邏輯結構時,要注意兩點:

  • 將每一個數據元素看做一個節點,用圓圈表示。
  • 元素之間的邏輯關係用借點之間的連線表示,如果這個關係是有方向的,那麼用箭頭的連線表示。

1.3.2 物理結構

物理結構:是指資料的邏輯結構在計算機中的儲存形式。

資料的儲存結構性正確反應資料元素之間的邏輯關係

資料元素的儲存結構形式有兩種:順序儲存和鏈式儲存。

1.順序儲存結構

順序儲存結構:是把資料元素存放在地址連續的儲存單元裡,其資料間的邏輯關係和物理關係是一致的。

鏈式儲存結構:是把資料元素存放在任意的儲存單元裡,這組儲存但願可以是連續的,也可以是不連續的。

邏輯結構是面向問題的,而物理結構就是面向計算機的,其基本的目標就是將資料及其邏輯關係儲存到計算機的記憶體中。

1.4 資料型別

資料型別:是指一組性質相同的值的集合及定義再次集合上的一些操作的總稱

1.4.1 資料型別定義

原子型別:

是不可以在分解的基本型別,包括整型、實型、字元型等。

結構型別:

由若干個型別組合而成,是可以再分解的。例如,整型陣列是由若干整型資料組成的。

抽象是指抽取出事物具有的普遍性的本質

1.4.2 抽象資料型別

抽象資料型別(Abstract Data Type, ADT):一個數學模型及定義在該模型上的一組操作。

一個抽象資料型別定義了:一個數據物件、資料物件中各資料元素之間的關係及對資料元素的操作。

抽象資料型別體現了程式設計中問題分解、抽象和資訊隱藏的特性。

描述抽象資料型別的標準格式

ADT 抽象資料型別名
Data
 資料元素之間邏輯關係的定義
Operation
 操作1
    	初始條件
  		操作結果描述
 操作2
    	......
 操作n
    	......
endADT

資料結構是相互之間存在一種或多種特定關係的資料元素的集合