數據結構——基於C語言的描述(第2版)
- 出版商: 清華大學
- 出版日期: 2026-08-01
- 售價: $414
- 語言: 簡體中文
- 頁數: 339
- ISBN: 7302718970
- ISBN-13: 9787302718970
-
相關分類:
Algorithms-data-structures
下單後立即進貨 (約4週~6週)
相關主題
商品描述
本書系統地介紹了數據結構的基礎理論知識及算法設計方法。第1章至第7章從抽象數據類型的角度,詳細討論了各類基本數據結構及其應用,主要包括線性表、棧和隊列、串、數組和廣義表、樹和二叉樹以及圖。第8章和第9章重點討論了查找與排序的各種實現方法及其綜合比較。第10章介紹了數據結構課程實驗的目的、步驟與內容,附錄中提供了全書習題的參考答案。全書采用類C語言描述算法,並隨書配備微課視頻、教學課件、教學大綱、習題解答、程序源碼、測驗試卷、學習指南等教學資源。 本書在內容選取上符合人才培養目標的要求,契合教學規律和認知規律;在組織編排上遵循“先理論、後應用、理論與應用相結合”的原則,兼顧學科的廣度與深度,力求適用面廣。全書結構嚴謹、層次清晰、概念準確、深入淺出、描述清晰。
作者簡介
彭波:中國農業大學教授、博士研究生導師,兼任教育部學位與研究生教育發展中心評議專家。長期從事計算機科學與技術方面的教學及科研工作,主講“數據結構”“算法設計與分析”“程序設計”“多媒體技術”等課程。主編《數據結構》(普通高等教育“十一五”國家級規劃教材)、《數據結構及算法》、《程序設計》、《Java編程指南》、《多媒體技術教程》等教材20余部,發表學術論文60余篇,主持或參加多項國家科技支撐計劃課題。榮獲寶鋼優秀教師獎,並被授予中國農業大學傑出教師、中國農業大學優秀教育工作者等榮譽。
目錄大綱
目錄
第1章緒論
微課視頻49分鐘
1.1數據結構的範疇
1.1.1計算機處理問題的分類
1.1.2非數值性問題的求解
1.2數據結構發展的概況
1.3數據結構相關的概念
1.3.1數據的概念
1.3.2結構的概念
1.3.3類型的概念
1.4算法描述與算法分析
1.4.1算法的概念
1.4.2算法描述
1.4.3算法分析
習題
第2章線性表
微課視頻63分鐘
2.1線性表的類型定義
2.1.1線性表的定義
2.1.2線性表的抽象數據類型
2.2線性表的順序表示及操作實現
2.2.1順序表的定義
2.2.2順序表的操作實現
2.3線性表的鏈式表示及操作實現
2.3.1單鏈表的定義
2.3.2單鏈表的操作實現
2.3.3循環鏈表
2.3.4雙向鏈表
2.3.5靜態鏈表
2.4線性表兩種存儲表示的比較
2.4.1基於空間的比較
2.4.2基於時間的比較
習題
第3章棧和隊列
微課視頻37分鐘
3.1棧
3.1.1棧的類型定義
3.1.2棧的存儲結構及操作實現
3.1.3棧與遞歸問題
3.2隊列
3.2.1隊列的類型定義
3.2.2隊列的存儲表示及操作實現
習題
第4章串
微課視頻44分鐘
4.1串的類型定義
4.1.1串的定義
4.1.2串的抽象數據類型
4.2串的存儲表示及操作實現
4.2.1定長順序存儲表示
4.2.2堆分配存儲表示
4.2.3串的塊鏈存儲表示
4.3串的模式匹配
4.3.1簡單的模式匹配方法——BF算法
4.3.2改進的模式匹配方法——KMP算法
習題
第5章數組和廣義表
微課視頻46分鐘
5.1數組
5.1.1數組的類型定義
5.1.2數組的順序表示及操作實現
5.2矩陣的壓縮存儲
5.2.1特殊矩陣的壓縮存儲
5.2.2稀疏矩陣的壓縮存儲
5.3廣義表
5.3.1廣義表的類型定義
5.3.2廣義表的鏈式表示及操作實現
習題
第6章樹和二叉樹
微課視頻96分鐘
6.1樹
6.1.1樹的類型定義
6.1.2樹的存儲表示及操作實現
6.2二叉樹
6.2.1二叉樹的類型定義
6.2.2二叉樹的重要性質
6.2.3二叉樹的存儲表示及操作實現
6.2.4線索二叉樹
6.3樹和森林與二叉樹的轉換
6.3.1樹與二叉樹的轉換
6.3.2森林與二叉樹的轉換
6.4哈夫曼樹及其應用
6.4.1哈夫曼樹
6.4.2哈夫曼編碼
習題
第7章圖
微課視頻99分鐘
7.1圖的類型定義
7.1.1圖的定義
7.1.2圖的抽象數據類型
7.1.3圖的遍歷
7.2圖的存儲表示與操作實現
7.2.1鄰接矩陣
7.2.2鄰接表
7.2.3十字鏈表
7.2.4鄰接多重表
7.2.5圖的操作實現
7.3圖的連通性及其應用
7.3.1無向圖的連通分量
7.3.2生成樹和生成森林
7.3.3最小生成樹
7.4有向無環圖及其應用
7.4.1拓撲排序
7.4.2關鍵路徑
7.5最短路徑
7.5.1單源最短路徑
7.5.2其他最短路徑
習題
第8章查找
微課視頻100分鐘
8.1查找的基本概念
8.2靜態查找表
8.2.1靜態查找表的類型定義
8.2.2順序表的查找
8.2.3有序表的查找
8.2.4索引順序表的查找
8.3動態查找表
8.3.1動態查找表的類型定義
8.3.2二叉排序樹和平衡二叉樹
8.3.3B-樹、B+樹和鍵樹
8.4哈希表
8.4.1哈希表的定義
8.4.2哈希函數的構造
8.4.3處理沖突的方法
8.4.4哈希表上的查找
習題
第9章排序
微課視頻89分鐘
9.1排序的基本概念
9.2插入排序
9.2.1直接插入排序
9.2.2希爾排序
9.3交換排序
9.3.1冒泡排序
9.3.2快速排序
9.4選擇排序
9.4.1簡單選擇排序
9.4.2堆排序
9.5歸並排序
9.5.12路歸並排序
9.5.2歸並排序
9.6基數排序
9.6.1多關鍵字排序
9.6.2鏈式基數排序
9.7排序方法比較
習題
第10章課程實驗
10.1實驗概述
10.1.1教學目的
10.1.2實驗步驟
10.2實驗內容
10.2.1線性表
10.2.2棧和隊列
10.2.3串
10.2.4數組和廣義表
10.2.5樹和二叉樹
10.2.6圖
10.2.7查找
10.2.8排序
附錄A習題參考答案







