軟考設計師15 資料結構01

2021-09-20 00:01:26 字數 3152 閱讀 2229

日常管理,先上思維導圖

1 定義:n個元素的有限序列,通常記為(a1,a2,...,an)

2 特點:存在唯一表頭表尾,直接前驅,直接後繼

3 儲存

1)順序儲存

優劣:可隨機訪問元素,但修/刪需要移動大量元素

2)鏈式儲存

定義:用結點來儲存資料元素,邏輯緊鄰,物理(不)連續

優劣:插/刪不需移動元素,但增加了儲存開銷,不能隨機訪問結點(儲存資料域和指標域)

延伸:1)雙向鍊錶:每個結點包含兩個指標,指明直接前驅和直接後繼元素,可在兩個方向上遍歷鍊錶

2)迴圈鍊錶:表尾結點的指標指向表頭結點,可在任何位置遍歷整個元素

3)靜態鍊錶:借助陣列來描述線性表的連線儲存方式

4 線性表的插入和刪除

1)順序儲存結構

挪元素,插入;刪元素,挪動

2)鏈式儲存結構

插入、刪除

讓c指向它;

然後讓p指向c的位址;

刪除:a指向被刪除元素(b)指向的元素c

1 概念:通過一端(棧頂)實現資料儲存和檢索的一種線性表,有棧底,先進後出

2  儲存結構

1)順序儲存

增加指標top指向棧頂元素

2)鏈式儲存(鏈棧)

不必設頭節點(棧頂操作),頭指標=棧頂指標

1 概念:先進先出的線性表,一端插入(對尾),另一端刪除(對頭)

2 儲存結構

1)順序儲存

設定隊頭/尾兩個指標

2)鏈式儲存(鏈佇列)

新增頭結點,指向頭指標。

隊列為頭指標=尾指標,指向頭節點

1 概念:由字元構成的有限序列,取值範圍受限的線性表。記為s=』a1 a2 a3 ... an『,s是串名,右邊是串值

2 特例:1)空串:長度為零 的串,,無任何字元

2)空格串:一/多個空格串構成的串

3)子串:由串中任意長度的連續字元構成的序列,類似子集。

子串在主串中的位置是該子串(首席出現)的第乙個字元在主串中的位置。

空串是任意串的子串,例:cb

4)主串:包含字元的串,例:abcddcc

5)串相等:兩個串長度相等,且對應位置上的字元相同

6)串比較:依次比較字元ascii碼,先大者大,始終相等,串長者大

a:97 、a:95、0 :48

3 串的儲存結構

串結束以\0結束

1)順序儲存

用一組位址連續的儲存單元來儲存串值的字串行

2)鏈式儲存

每個結點可存一/多個字元,考慮儲存密度問題

樹前面有說過

1 概念:字串匹配演算法 

2 實現:實現乙個next()函式,函式本身包含了模式串的區域性匹配資訊

部分匹配表位數:

字串(已匹配字串)

1)字首:除了最後乙個字元外,所有以最後乙個字元結尾的子串

2)字尾:除了第一乙個字元外,所有以第乙個字元開頭的子串

3)部分匹配位數:字首和字尾共有元素對應的長度

3 移動位數:已匹配位數-部分匹配位數

4 例題

1 概念:由兩個集合v和e構成的二元組,記作:g=(v,e)。

v是頂點的非空有限集合

e是圖中邊的有限集合

2 1)有向圖:g的每條邊有方向;頂點間關係

2)無向圖:g的每條邊都無方向;頂點關係(vi,vj)

3)完全圖:g的任意兩個頂點都有一條邊相連線

1)有向完全圖:邊數:n(n-1)

2)無向完全圖:邊數:n(n-1)/2

1)入度:以v為終點的有向邊的條數 id(v)

2)出度:以v為始點的條數od(v)

4 帶權圖

邊上帶權的圖,權指每條邊上的數

5 連通圖

連通圖:無向圖中從乙個結點到任意乙個結點有路徑相連。邊的數目》=頂點數目-1

強連通圖:對於任意兩個頂點,存在到雙方的有向路徑。

6 生成樹

1)極小連通子圖,n個結點,n-1條邊

若新增一條邊,構成乙個環,減去一條邊,非聯通圖

2)最小生成樹:帶全路徑和最小

7 圖的儲存結構

1)鄰接矩陣

n個結點的圖,可使用n*n的矩陣(二維陣列)表示鄰接關係

2)鄰接表

由表頭結點和表結點兩部分組成

8 圖的遍歷

1)深度優先搜尋(dfs)

q2)廣度優先搜尋(bfs)

拓撲排序

aov網:有向無序圖。類似前驅圖

aov頂點的順序稱為拓撲序列

拓撲排序:

1)從aov網中選擇乙個沒有前驅的頂點輸出它

2)刪除該頂點,且刪除所有以該頂點為尾的弧

3)迭代

拓撲序列不唯一

軟考設計師15 資料結構01

日常管理,先上思維導圖 1 定義 n個元素的有限序列,通常記為 a1,a2,an 2 特點 存在唯一表頭表尾,直接前驅,直接後繼 3 儲存 1 順序儲存 優劣 可隨機訪問元素,但修 刪需要移動大量元素 2 鏈式儲存 定義 用結點來儲存資料元素,邏輯緊鄰,物理 不 連續 優劣 插 刪不需移動元素,但增...

軟考 軟體設計師3 儲存結構

一 層次化儲存結構 cpu 暫存器 cache 內容訪問 記憶體 ram rom 外存 硬碟 光碟 u盤 cache 使用cache改善系統效能的依據是程式的區域性性原理 時間區域性性 空間區域性性 位址映象是將主存與cache的儲存空間劃分為若干個大小相等的頁 或塊 cache映象分為直接相聯映象...

軟考 軟體設計師 演算法

分類 插入排序 直接插入,希爾排序 選擇排序 簡單選擇,堆排序 交換排序 氣泡排序,快速排序 歸併排序 基數排序 直接插入排序 每一步將乙個待排序列根據乙個元素值的大小插入已經排好序的那部分去。首個元素歸入已排好序列 第二個元素跟已排好序列比較,放於那位子,後續元素遞推。希爾排序 對直接插入排序的改...