數據結構(Java語言實現·題庫·微課視頻版)

數據結構(Java語言實現·題庫·微課視頻版)

《數據結構(Java語言實現·題庫·微課視頻版)》是2023年9月1日清華大學出版社出版的圖書,作者:陳銳 馬軍霞 蔡增玉 馬歡 朱亮 趙曉君 李朝陽 蔣昌猛 王超。

基本介紹

  • 中文名:數據結構(Java語言實現·題庫·微課視頻版)
  • 作者:陳銳 馬軍霞 蔡增玉 馬歡 朱亮 趙曉君 李朝陽 蔣昌猛 王超
  • 出版時間:2023年9月1日
  • 出版社:清華大學出版社
  • ISBN:9787302634409
  • 定價:59.8 元
  • 印次:1-1
  • 印刷日期:2023.08.31
內容簡介,圖書目錄,

內容簡介

本書全面、系統地介紹了數據結構相關內容,包括各種數據結構的邏輯關係、存儲結構及基本運算,通過豐富的案例講解了算法的多種實現,所有算法程式均採用Java語言實現。 本書共8章,主要內容包括數據結構基礎,線性表,棧和佇列,串、數組和廣義表,樹和二叉樹,圖,查找,排序。本書內容全面,理論與實踐並重,通過大量圖表和案例講解算法實現過程,方便讀者理解、掌握。本書內容安排符合本科生培養目標和教育工程認證要求,在知識的講解過程中注重思政元素的融入,並提供微課視頻、教學課件、課後習題、實驗題等豐富的教學資源。 本書適合作為高等院校計算機、軟體工程等相關專業本科生數據結構課程的教材,也可供從事軟體開發的工程技術人員作為參考書。

圖書目錄

目錄
資源下載
第1章數據結構基礎
1.1數據結構相關概念
1.2抽象數據類型
1.2.1抽象數據類型的定義
1.2.2抽象數據類型的描述
1.3數據的邏輯結構與存儲結構
1.3.1邏輯結構
1.3.2存儲結構
1.4算法的特性與算法的描述
1.4.1算法的定義
1.4.2算法的特性
1.4.3算法的描述
1.5算法分析
1.5.1算法設計的要求
1.5.2算法時間複雜度
1.5.3算法空間複雜度
1.6關於數據結構課程的地位及學習方法
小結
習題
第2章線性表
2.1線性表的定義及抽象數據類型
2.1.1線性表的邏輯結構
2.1.2線性表的抽象數據類型
2.2線性表的順序表示與實現
2.2.1線性表的順序存儲結構
2.2.2順序表的基本運算
2.2.3順序表的實現算法分析
2.2.4順序表的優缺點
2.2.5順序表套用示例
2.3線性表的鏈式表示與實現
2.3.1單鍊表的存儲結構
2.3.2單鍊表的基本運算
2.3.3單鍊表存儲結構與順序存儲結構的優缺點
2.3.4單鍊表套用示例
2.4循環單鍊表
2.4.1循環單鍊表的鏈式存儲
2.4.2循環單鍊表套用示例
2.5雙向鍊表
2.5.1雙向鍊表的存儲結構
2.5.2雙向鍊表的插入和刪除操作
2.5.3雙向鍊表套用示例
2.6綜合案例: 一元多項式的表示與相加
2.6.1一元多項式的表示
2.6.2一元多項式相加
2.7實驗
2.7.1基礎實驗
2.7.2綜合實驗
小結
習題
第3章棧和佇列
3.1棧
3.1.1棧的基本概念
3.1.2棧的抽象數據類型
3.1.3棧的順序表示與實現
3.1.4棧的鏈式表示與實現
3.1.5棧的典型套用
3.2棧與遞歸
3.2.1設計遞歸算法
3.2.2分析遞歸調用過程
3.2.3消除遞歸
3.3佇列
3.3.1佇列的定義及抽象數據類型
3.3.2佇列的順序存儲及實現
3.3.3佇列的鏈式存儲及實現
3.4雙端佇列
3.4.1雙端佇列的定義
3.4.2雙端佇列的套用
3.5實驗
3.5.1基礎實驗
3.5.2綜合實驗
小結
習題
第4章串、數組與廣義表
4.1串的定義及抽象數據類型
4.1.1串的定義
4.1.2串的抽象數據類型
4.2串的存儲表示
4.2.1串的順序存儲結構
4.2.2串的鏈式存儲結構
4.2.3順序串套用示例
4.3串的模式匹配
4.3.1樸素模式匹配算法——BruteForce算法
4.3.2KMP算法
4.3.3模式匹配套用示例
4.4數組
4.4.1數組的定義
4.4.2數組的順序存儲結構
4.4.3特殊矩陣的壓縮存儲
4.4.4稀疏矩陣的壓縮存儲
4.5廣義表
4.5.1廣義表的定義
4.5.2廣義表的抽象數據類型
4.5.3廣義表的頭尾鍊表表示
4.5.4廣義表的擴展線性鍊表表示
4.6實驗
4.6.1基礎實驗
4.6.2綜合實驗
小結
習題
第5章樹和二叉樹
5.1樹
5.1.1樹的定義
5.1.2樹的邏輯表示
5.1.3樹的抽象數據類型
5.2二叉樹
5.2.1二叉樹的定義
5.2.2二叉樹的性質
5.2.3二叉樹的抽象數據類型
5.2.4二叉樹的存儲表示
5.3二叉樹的遍歷
5.3.1二叉樹遍歷的定義
5.3.2二叉樹的先序遍歷
5.3.3二叉樹的中序遍歷
5.3.4二叉樹的後序遍歷
5.4二叉樹的線索化
5.4.1二叉樹的線索化定義
5.4.2二叉樹的線索化算法實現
5.4.3線索二叉樹的遍歷
5.4.4線索二叉樹的套用示例
5.5樹、森林與二叉樹
5.5.1樹的存儲結構
5.5.2樹轉換為二叉樹
5.5.3森林轉換為二叉樹
5.5.4二叉樹轉換為樹或森林
5.5.5樹和森林的遍歷
5.6並查集
5.6.1並查集的定義
5.6.2並查集的實現
5.6.3並查集的套用示例
5.7二叉樹的典型套用
5.7.1哈夫曼樹及其套用
5.7.2利用二叉樹求解算術表達式的值
5.8實驗
5.8.1基礎實驗
5.8.2綜合實驗
小結
習題
第6章圖
6.1圖的定義與相關概念
6.1.1圖的定義
6.1.2圖的相關概念
6.1.3圖的抽象數據類型
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最小生成樹
6.5有向無環圖
6.5.1AOV網與拓撲排序
6.5.2AOE網與關鍵路徑
6.6最短路徑
6.6.1從某個頂點到其他頂點的最短路徑
6.6.2任意兩個頂點之間的最短路徑
6.7圖的套用示例
6.7.1距離某個頂點的最短路徑長度為k的所有頂點
6.7.2求圖中頂點u到頂點v的簡單路徑
6.8實驗
6.8.1基礎實驗
6.8.2綜合實驗
小結
習題
第7章查找
7.1查找的基本概念
7.2靜態查找
7.2.1順序表的查找
7.2.2有序順序表的查找
7.2.3索引順序表的查找
7.3動態查找
7.3.1二叉排序樹
7.3.2平衡二叉樹
7.3.3紅黑樹
7.4B-樹與B+樹
7.4.1B-樹
7.4.2B+樹
7.5哈希表
7.5.1哈希表的定義
7.5.2哈希函式的構造方法
7.5.3處理衝突的方法
7.5.4哈希表查找與分析
7.5.5哈希表套用示例
7.6實驗
7.6.1基礎實驗
7.6.2綜合實驗
小結
習題
第8章排序
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.4交換排序
8.4.1冒泡排序
8.4.2快速排序
8.4.3交換排序套用示例
8.5歸併排序
8.6基數排序
8.6.1基數排序算法
8.6.2基數排序套用示例
8.7實驗
8.7.1基礎實驗
8.7.2綜合實驗
小結
習題
參考文獻

相關詞條

熱門詞條

聯絡我們