《資料結構(C語言版)》綜述

2021-07-01 22:17:41 字數 3562 閱讀 4910

第一章 緒論(將於4月20日學習完畢,含課後題以及資料練習題)

1.1什麼是資料結構

1.2基本概念和術語

1.3抽象資料結構型別的表示與實現

1.4演算法和演算法分析

—-1.4.1演算法

—-1.4.2演算法設計的要求

—-1.4.3演算法效率的度量

第二章 線性表

2.1線性表的型別定義

2.2線性表的順序表示和實現

2.3線性表的鏈式表示和實現

—-2.3.1線性鍊錶

—-2.3.2迴圈鍊錶

—-2.3.3雙向鍊錶

2.3一元多項式的表示及相加

第三章 棧和佇列

3.1棧

—-3.1.1抽象資料型別棧的定義

—-3.1.2棧的表示和實現

3.2棧的應用舉例

—-3.2.1數制轉換

—-3.2.2括號匹配的檢驗

—-3.2.3行編輯程式

—-3.2.4迷宮求解

—-3.2.5表示式求職

**3.3棧與遞迴的實現

3.4佇列

—-3.4.1抽象資料型別佇列的定義

—-3.4.2鏈佇列——佇列的鏈式表示和實現

—-3.4.3迴圈佇列——佇列的順序表示和實現

3.4離散時間模擬

第四章 串

4.1串型別的定義

4.2串的表示和實現

—-4.2.1定長順序儲存表示

—-4.2.2堆分配儲存表示

—-4.2.3串的塊鏈儲存表示

**4.3串的模式匹配演算法

—-4.3.1求子串位置的定位函式index(s,t,pos)

—-4.3.2模式匹配的一種改進演算法

4.4串操作應用舉例

—-4.4.1文字編輯

**—-4.4.2建立詞索引表

第五章 陣列和廣義表

5.1陣列的定義

5.2陣列的順序表示和實現

5.3矩陣的壓縮儲存

—-5.3.1特殊矩陣

—-5.3.2稀疏矩陣

5.4廣義表的定義

5.5廣義表的儲存結構

*5.6*m元多項式的表示

**5.7廣義表的遞迴演算法

—-5.7.1求廣義表的遞迴演算法

—-5.7.2複製廣義表

—-5.7.3建立廣義表的儲存結構

第六章 樹和二叉樹

6.1數的定義和基本術語

6.2二叉樹

—-6.2.1二叉樹的定義

—-6.2.2二叉樹的性質

—-6.2.3二叉樹的儲存結構

6.3遍歷二叉樹和線索二叉樹

—-6.3.1遍歷二叉樹

—-6.3.2線索二叉樹

6.4樹和森林

—-6.4.1樹的儲存結構

—-6.4.2森林與二叉樹的轉換

—-6.4.3樹和森林的遍歷

**6.5樹與等價問題

6.6赫夫曼樹及其應用

—-6.6.1最優二叉樹(赫夫曼樹)

—-6.6.2赫夫曼編碼

**6.7回溯法與樹的遍歷

**6.8樹的計數

第七章 圖

7.1圖的定義和術語

7.2圖的儲存結構

—-7.2.1陣列表示法

—-7.2.2鄰接表

—-7.2.3十字鍊錶

—-7.2.4鄰接多重表

7.3圖的遍歷

—-7.3.1深度優先搜尋

—-7.3.2廣度優先搜尋

7.4圖的連通性問題

—-7.4.1無向圖的連通分量

**7.4.2有向圖的強連通向量

7.4.3最小生成樹

**7.4.4關節點和重連通分量

7.5有向無環圖極其應用

—-7.5.1拓撲排序

—-7.5.2關鍵路徑

7.6最短路徑

—-7.6.1從某個源點到其餘各頂點的最短路徑

—-7.6.2每一對頂點之間的最短路徑

第八章 動態儲存管理

8.1概述

8.2可利用空間表及分配方法

8.3邊界標識法

—-8.3.1可利用空間表的結構

—-8.3.2分配演算法

—-8.3.3**演算法

8.4夥伴系統

—-8.4.1可利用空間表的結構

—-8.4.2分配演算法

—-8.4.3**演算法

**8.5無用單元收集

**8.6儲存緊縮

第九章 查詢

9.1靜態查詢表

—-9.1.1順序表的查詢

—-9.1.2有序表的查詢

**—-9.1.3靜態樹表的查詢

—-9.1.4索引順序表的查詢

9.2動態表查詢

—-9.2.1二叉排序樹和平衡二叉樹

—-9.2.2b-樹和b+樹

**—-9.2.3鍵樹

9.3雜湊表

—-9.3.1什麼是雜湊表

—-9.3.2雜湊函式的構造方法

—-9.3.3處理衝突的方法

—-9.3.4雜湊表的查詢極其分析

第十章 內部排序

10.1概述

10.2插入排序

—-10.2.1直接插入排序

—-10.2.2其他插入排序

—-10.2.3希爾排序

10.3快速排序

10.4選擇排序

**—-10.4.1簡單選擇排序

—-10.4.2樹形選擇排序

—-10.4.3堆排序

10.5歸併排序

10.6基數排序

—-10.6.1多關鍵字的排序

—-10.6.2鏈式基數排序

10.7各種內部排序方法的比較討論

第十一章 外部排序

11.1外存資訊的讀取

11.2外部排序的方法

**11.3多路平衡歸併的實現

**11.4置換-選擇排序

**11.5最佳歸併樹

第十二章 檔案

12.1有關檔案的基本概念

12.2順序檔案

12.3索引檔案

12.4isam檔案和vssm檔案

—-12.4.1isam檔案

—-12.4.2vsam檔案

12.5直接儲存檔案(雜湊檔案)

12.6多關鍵字檔案

—-12.6.1多重表檔案

—-12.6.2倒排檔案

**********====2023年4月19日晚22:58分

資料結構(C語言版)

用棧實現數字的進製轉換 10轉8 棧 限定只能在表尾進行插入或者刪除操作的線性表 特點 先進後出 儲存表示方法 順序棧和鏈棧 本文用的順序棧 實現 readonly name code class c include include define stack init size 100 儲存空間初始...

讀資料結構(C語言版)

資料 資料是對現實世界物質的符號表示,在計算機中的意思是能輸入到計算機中進行計算處理的符號為資料 實現是客觀世界在計算機中的表示方式,是程式加工的原材料。資料可以是聲音,文件 資料元素 組成資料的基本構成單位,通常以結構化的形式出現,比如一本書的書目資訊,包含作者,書名,出版刊號,出版社這些資料項,...

資料結構(C語言版) 棧

1 棧 僅在表尾進行插入和刪除操作的線性表。後進先出lifo。1 表尾端 允許插入和刪除的一端 為棧頂,表頭端 不允許插入和刪除的一端 為棧底。2 入棧 插入元素的操作。出棧 刪除棧頂元素 2 棧的兩種儲存表示方式 2 鏈棧 棧的鏈式儲存結構 優點是便於多個棧共享儲存空間和提高效率。3 括號匹配檢驗...