資料結構概論

2021-07-09 08:32:51 字數 1396 閱讀 4956

資料是資訊的載體,是描述客觀事物的數、字元、以及其他能夠記錄承載資訊的並且能夠被計算機讀入、識別以及處理的符號集合。為了有效的組織資料,也為了能夠更加方便的使用資料我們引入資料結構這一概念:資料結構由某一資料元素的集合和該集合中各個資料相互之間的關係組成。記為:

圖1.資料結構示意圖

一句資料元素之間的關係的不同可將資料結構分為兩大類:線性結構非線性結構

線性結構也稱之為線性表。它的資料元素之間滿足除第乙個和最後乙個元素之外,所有其他元素有且僅有乙個直接前驅和乙個直接後繼。例如一串整數序列就可以看做是乙個線性結構。

非線性結構中資料元素不在侷限於線性序列中,每乙個資料元素可能與任意多個資料元素發生關係。依據關係的不同可分為層次結構和群結構。

層次結構是按層次劃分的資料元素的集合,指定層次上元素可以有零個或多個處於下一層次上的直屬元素。樹形結構就是典型的層次結構資料型別。

圖2.樹形結構示意圖

群結構中所有元素之間並無特定的順序關係。常見的群結構有集合以及圖結構。

圖3.集合結構示意圖

圖4.圖結構示意圖

資料結構的儲存方法與資料結構的分類是兩個不同的概念,這點需要注意。資料結構的儲存結構可以用順序儲存方法、鏈結儲存方法、索引儲存方法以及雜湊儲存方法得到,這裡著重介紹前兩種方法。

順序儲存方法:給定一塊實體地址相鄰的儲存空間,把邏輯相鄰的元素存放到實體地址相鄰的空間中,即以實體地址的連續表徵邏輯關係的相鄰。通常可以通過一維陣列來進行描述。

兩種方法各有春秋。順序儲存方式能以常數時間訪問已知位置元素而且操作簡單,但是在插入以及刪除操作上卻比較麻煩,需要o(n)的時間複雜度。同樣鏈結儲存設計在知道插入以及刪除位置時能以常數時間進行插入以及刪除操作。選擇何種資料結構儲存方式來表示相應的邏輯結構,要視不同的資源要求而定,主要考慮時間複雜度空間複雜度以及演算法的簡單性。

至於adt以及演算法的介紹,(^-^)v

資料結構概論

一 資料結構 是相互之間存在一種或多種特定關係的資料元素的集合。資料機構是一門研究非數值計算的程式設計問題中的操作物件,以及他們之間的關係和操作等相關問題的學科。1968年,美國的高德納在其所寫的 計算機程式設計藝術 中第一次較為系統的闡述了資料的邏輯結構和儲存結構及其操作。這個時候,資料結構才算是...

大話資料結構 資料結構概論

1.資料結構的邏輯結構 資料元素之間的相互關係 1.1 集合結構 集合結構之間的元素除了屬於同乙個集合之外,他們之間沒有任何其他關係,各個元素的關係是平等的 1.2 線性結構 元素之間存在一對一的關係,比如陣列,鍊錶 1.3 樹形結構 元素之間存在一對多的關係 2.資料結構的物理結構 在我看來,資料...

資料結構1 概論

資料結構是所有演算法的基礎,只有精通於資料結構才能深入學習演算法從而在現有演算法的基礎上進行優化 創新。1 基本概念 資料 資料元素 資料項 資料項 字段 屬性 域 組成資料元素 元素 記錄 節點 頂點 資料元素組成資料。資料結構 顧名思義資料的結構 通俗一點就是 資料在計算機中怎麼儲存的 是以怎樣...