第一章 緒論(將於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 括號匹配檢驗...