第1章 緒論
1.1 數據結構的基本概念
1.1.1 數據、數據元素、數據元素的數據類型
1.1.2 數據的邏輯結構
1.1.3 數據的存儲結構
1.1.4 數據的操作
1.1.5 數據結構課程討論的主要內容
1.2 抽象數據類型
1.3 算法和算法的時間復雜度
1.3.1 算法
1.3.2 算法的性質和設計目標
1.3.3 算法的時間效率分析
1.3.4 算法耗時的實際測試
1.3.5 數據元素個數和時間復雜度
1.4 算法書寫規(guī)范
習題1
第2章 線性表
2.1 線性表概述
2.1.1 線性表的定義
2.1.2 線性表的抽象數據類型
2.2 線性表的順序表示和實現
2.2.1 順序表的存儲結構
2.2.2 順序表操作的實現
2.2.3 順序表操作的效率分析
2.2.4 順序表應用舉例
2.3 線性表的鏈式表示和實現
2.3.1 單鏈表的存儲結構
2.3.2 單鏈表的操作實現
2.3.3 單鏈表操作的效率分析
2.3.4 單鏈表應用舉例
2.3.5 循環(huán)單鏈表
2.3.6 雙向鏈表
2.4 靜態(tài)鏈表
2.5 算法設計舉例
2.5.1 順序表算法設計舉例
2.5.2 單鏈表算法設計舉例
習題2
第3章 堆棧和隊列
3.1 堆棧
3.1.1 堆棧的基本概念
3.1.2 堆棧的抽象數據類型
3.1.3 堆棧的順序表示和實現
3.1.4 堆棧的鏈式表示和實現
3.2 堆棧應用
3.2.1 括號匹配問題
3.2.2 算術表達式計算問題
3.3 隊列
3.3.1 隊列的基本概念
3.3.2 隊列的抽象數據類型
3.3.3 順序隊列以及存在的問題
3.3.4 順序循環(huán)隊列的表示和實現
3.3.5 鏈式隊列
3.3.6 隊列的應用
3.4 優(yōu)先級隊列
3.4.1 順序優(yōu)先級隊列的設計和實現
3.4.2 優(yōu)先級隊列的應用
習題3
第4章 串
4.1 串概述
4.1.1 串及其基本概念
4.1.2 串的抽象數據類型
4.1.3 c語言的串函數
4.2 串的存儲結構
4.3 串基本操作的實現算法
4.4 串的模式匹配算法
4.4.1 Brute—Force算法
4.4.2 KMP算法
4.4.3 Brute.Force算法和KMP算法的比較
習題4
第5章 數組
5.1 數組概述
5.1.1 數組的定義
5.1.2 數組的實現機制
5.1.3 數組的抽象數據類型
5.2 動態(tài)數組
……
第6章 遞歸算法
第7章 廣義表
第8章 樹和二叉樹
第9章 圖
第10章 排序
第11章 查找
第12章 文件
附錄A 上機實習內容規(guī)范和上機實習報告范例
附錄B 部分習題解答
參考文獻