出版時間:2012-3 出版社:機械工業(yè)出版社 作者:郭純一,韓英杰 編著
內(nèi)容概要
《數(shù)據(jù)結(jié)構(gòu)實用教程(c語言版)》采用讀者熟悉的c語言作為數(shù)據(jù)結(jié)構(gòu)和算法的描述語言,對數(shù)據(jù)的存儲結(jié)構(gòu)和算法的描述力求簡明、清晰,在對數(shù)據(jù)結(jié)構(gòu)的刻畫中貫穿了面向?qū)ο蟮挠^點,同時突出了抽象數(shù)據(jù)類型的介紹。全書共分為10章:第1章對課程內(nèi)容做概要性的說明,并介紹數(shù)據(jù)結(jié)構(gòu)的基本概念和術(shù)語以及進行算法描述和算法分析的基本方法;第2~4章介紹各種線性結(jié)構(gòu)(線性表、棧、隊列和串);第5~8章介紹各種非線性結(jié)構(gòu)(多維數(shù)組、廣義表、樹和圖);第9章和第10章介紹非數(shù)值計算領(lǐng)域中的兩種重要操作(查找和排序)的各種實現(xiàn)技術(shù)。
《數(shù)據(jù)結(jié)構(gòu)實用教程(c語言版)》概念表述嚴(yán)謹(jǐn),文字?jǐn)⑹龊啙?,可作為高等院校計算機及相關(guān)專業(yè)的數(shù)據(jù)結(jié)構(gòu)課程的教材,也可供從事計算機應(yīng)用工作的工程技術(shù)人員和編程愛好者學(xué)習(xí)參考。
書籍目錄
出版者的話
叢書序言
叢書編委會
前言
教學(xué)建議
第一部分 數(shù)據(jù)結(jié)構(gòu)的基本概念
第1章 緒論
1.1 數(shù)據(jù)結(jié)構(gòu)概述
1.1.1 幾個非數(shù)值計算問題
1.1.2 數(shù)據(jù)結(jié)構(gòu)在計算機學(xué)科中的地位
1.1.3 數(shù)據(jù)結(jié)構(gòu)課程的發(fā)展史
1.1.4 數(shù)據(jù)結(jié)構(gòu)課程的學(xué)習(xí)特點
1.2 基本概念及術(shù)語
1.2.1 關(guān)于數(shù)據(jù)的基本概念
1.2.2 關(guān)于數(shù)據(jù)結(jié)構(gòu)的基本概念
1.2.3 關(guān)于數(shù)據(jù)類型的基本概念
1.3 算法和算法分析
1.3.1 算法的概念與特性
1.3.2 算法時間效率的度量
1.3.3 算法空間效率的度量
1.4 用c語言描述數(shù)據(jù)結(jié)構(gòu)和算法:知識回顧
習(xí)題與上機實驗題
第二部分 基本的數(shù)據(jù)結(jié)構(gòu)
第2章 線性表
2.1 線性表的基本概念及運算
2.1.1 線性表的定義和術(shù)語
2.1.2 線性表的抽象數(shù)據(jù)類型
2.2 線性表的順序存儲結(jié)構(gòu)
2.2.1 順序表的定義及特點
2.2.2 順序表的類型定義
2.2.3 順序表上基本操作的實現(xiàn)
2.2.4 一個應(yīng)用實例
2.2.5 順序表的總結(jié)
2.3 線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)
2.3.1 單鏈表的定義及特點
2.3.2 單鏈表上基本操作的實現(xiàn)
2.3.3 循環(huán)鏈表
2.3.4 雙向鏈表
2.3.5 靜態(tài)鏈表
2.4 線性表的應(yīng)用舉例
2.4.1 用線性表表示集合
2.4.2 用線性表表示一元多項式
習(xí)題與上機實驗題
第3章 棧和隊列
3.1 棧
3.1.1 棧的定義和抽象數(shù)據(jù)類型描述
3.1.2 棧的順序存儲結(jié)構(gòu)
3.1.3 棧的鏈?zhǔn)酱鎯Y(jié)構(gòu)
3.2 棧的應(yīng)用舉例
3.2.1 數(shù)制轉(zhuǎn)換
3.2.2 括號匹配的檢驗
3.2.3 表達式求值
3.2.4 棧與遞歸
3.3 隊列
3.3.1 隊列的定義和抽象數(shù)據(jù)類型描述
3.3.2 隊列的鏈?zhǔn)酱鎯Y(jié)構(gòu)
3.3.3 隊列的順序存儲結(jié)構(gòu)
3.4 隊列的應(yīng)用舉例
3.4.1 打印楊輝三角形
3.4.2 停車場管理
習(xí)題與上機實驗題
第4章 串
4.1 串的定義
4.1.1 串的基本概念
4.1.2 串的抽象數(shù)據(jù)類型
4.2 串的存儲結(jié)構(gòu)
4.2.1 串的順序存儲結(jié)構(gòu)
4.2.2 串的鏈?zhǔn)酱鎯Y(jié)構(gòu)
4.3 串的模式匹配
4.3.1 樸素的模式匹配算法
4.3.2 kmp算法
4.4 串的應(yīng)用舉例
4.4.1 文本編輯
4.4.2 建立詞索引表
習(xí)題與上機實驗題
第5章 數(shù)組
5.1 數(shù)組的定義和特點
5.1.1 數(shù)組的定義
5.1.2 數(shù)組的特點
5.2 數(shù)組的順序存儲表示
5.3 矩陣的壓縮存儲
5.3.1 特殊矩陣的壓縮存儲
5.3.2 稀疏矩陣的壓縮存儲
5.4 矩陣的應(yīng)用舉例
習(xí)題與上機實驗題
第6章 廣義表
6.1 廣義表的基本概念
6.2 廣義表的存儲結(jié)構(gòu)和基本運算
6.3 廣義表的應(yīng)用舉例
習(xí)題與上機實驗題
第7章 樹和二叉樹
7.1 樹的定義和術(shù)語
7.2 二叉樹
7.2.1 二叉樹的定義
7.2.2 二叉樹的性質(zhì)
7.2.3 二叉樹的存儲結(jié)構(gòu)
7.3 二叉樹的遍歷
7.3.1 遞歸形式的先、中、后序遍歷
7.3.2 非遞歸形式的先、中、后序遍歷
7.3.3 層序遍歷
7.3.4 二叉樹遍歷的應(yīng)用舉例
7.4 二叉樹的線索化
7.4.1 線索二叉樹的概念
7.4.2 線索二叉樹的遍歷
7.4.3 二叉樹的線索化過程
7.5 樹和森林
7.5.1 樹的存儲結(jié)構(gòu)
7.5.2 樹、森林與二叉樹的相互轉(zhuǎn)換
7.5.3 樹和森林的遍歷
7.6 哈夫曼樹及其應(yīng)用
7.6.1 哈夫曼樹的定義
7.6.2 哈夫曼編碼及數(shù)據(jù)壓縮
7.6.3 哈夫曼編碼的實現(xiàn)
習(xí)題與上機實驗題
第8章 圖
8.1 圖的基本概念
8.2 圖的存儲結(jié)構(gòu)
8.2.1 數(shù)組表示法
8.2.2 鄰接表
8.3 圖的遍歷
8.3.1 深度優(yōu)先搜索
8.3.2 廣度優(yōu)先搜索
8.3.3 圖的遍歷的應(yīng)用舉例
8.4 最小生成樹
8.4.1 普里姆算法
8.4.2 克魯斯卡爾算法
8.5 有向無環(huán)圖及其應(yīng)用
8.5.1 拓撲排序
8.5.2 關(guān)鍵路徑
8.6 最短路徑
8.6.1 單源最短路徑
8.6.2 任意兩個頂點之間的最短路徑
習(xí)題與上機實驗題
第三部分 數(shù)據(jù)結(jié)構(gòu)的基本技術(shù)
第9章 查找
9.1 查找的基本概念
9.2 基于線性表的查找
9.2.1 順序查找
9.2.2 折半查找
9.2.3 分塊查找
9.3 基于樹的查找
9.3.1 二叉排序樹
9.3.2 平衡二叉排序樹
9.3.3 b-樹和b+樹
9.4 基于散列表的查找
9.4.1 散列表的定義及術(shù)語
9.4.2 散列函數(shù)的構(gòu)造方法
9.4.3 處理沖突的方法
9.4.4 散列表的插入
9.4.5 散列表的查找及性能分析
習(xí)題與上機實驗題
第10章 排序
10.1 概述
10.1.1 排序的基本概念
10.1.2 內(nèi)部排序方法
10.2 插入排序
10.2.1 直接插入排序
10.2.2 折半插入排序
10.2.3 表插入排序
10.2.4 希爾排序
10.3 交換排序
10.3.1 冒泡排序
10.3.2 快速排序
10.4 選擇排序
10.4.1 簡單選擇排序
10.4.2 樹形選擇排序
10.4.3 堆排序
10.5 歸并排序
10.6 基數(shù)排序
10.6.1 多關(guān)鍵字排序
10.6.2 鏈?zhǔn)交鶖?shù)排序
10.7 各種內(nèi)部排序方法的性能比較
10.8 外部排序
10.8.1 外部排序過程
10.8.2 多路平衡歸并
10.8.3 置換-選擇排序
10.8.4 最佳歸并樹
習(xí)題與上機實驗題
參考文獻
圖書封面
評論、評分、閱讀與下載
數(shù)據(jù)結(jié)構(gòu)實用教程 PDF格式下載