編輯推薦
適讀人群 :適用於高等學校計算機及相關專業學生閱讀 “十二五”普通高等教育本科國傢級規劃教材,配套教學資源豐富。
內容簡介
《數據結構(Java版 第4版)》是“十二五”普通高等教育本科國傢級規劃教材。
《數據結構(Java版 第4版)》全麵係統地介紹數據結構的基礎理論和算法設計方法,包括綫性錶、樹、圖等數據結構以及查找和排序算法。《數據結構(Java版 第4版)》采用Java語言以麵嚮對象方法設計並實現瞭全部的數據結構及算法。《數據結構(Java版 第4版)》精選基礎理論內容,重點是數據結構設計和算法設計,通過降低理論難度和抽象性、加強實踐環節等措施,力求增強學生的理解能力和應用能力。《數據結構(Java版 第4版)》內容涉及的廣度和深度符閤本科培養目標的要求,配套教學資源豐富。
《數據結構(Java版 第4版)》可作為普通高等學校計算機及相近專業本科的數據結構課程教材,也可作為從事計算機軟件開發和工程應用人員的參考書。
作者簡介
葉核亞,女,1990年5月起,南京電力高等專科學校 電信係任教。2002年至今,南京工程學院(原校升本科) 計算機工程係任教。
內頁插圖
目錄
第1章 緒論
1.1 數據結構的基本概念
1.1.1 為什麼要學習數據結構
1.1.2 什麼是數據結構
1.1.3 數據類型與抽象數據類型
1.2 算法
1.2.1 什麼是算法
1.2.2 算法分析
1.2.3 算法設計
習題
實驗1 算法設計與分析
第2章 綫性錶
2.1 綫性錶抽象數據類型
2.2 綫性錶的順序存儲和實現
2.2.1 綫性錶的順序存儲結構
2.2.2 順序錶
2.2.3 排序順序錶
2.3 綫性錶的鏈式存儲和實現
2.3.1 綫性錶的鏈式存儲結構
2.3.2 單鏈錶
2.3.3 雙鏈錶
2.4 綫性錶應用:多項式的錶示及運算
2.4.1 一元多項式的錶示及運算
2.4.2 二元多項式的錶示及運算
習題
實驗2 綫性錶的基本操作
第3章 串
3.1 串抽象數據類型
3.2 串的存儲和實現
3.2.1 串的存儲結構
3.2.2 常量字符串類
3.2.3 變量字符串類
3.3 串的模式匹配
3.3.1 Brute-Force算法
3.3.2 模式匹配應用
3.3.3 KMP算法
習題
實驗3 串的基本操作及模式匹配算法
第4章 棧和隊列
4.1 棧
4.1.1 棧抽象數據類型
4.1.2 順序棧
4.1.3 鏈式棧
4.1.4 棧的應用
4.2 隊列
4.2.1 隊列抽象數據類型
4.2.2 順序隊列
4.2.3 鏈式隊列
4.2.4 隊列的應用
4.2.5 優先隊列
4.3 遞歸
習題
實驗4 棧和隊列以及遞歸算法
第5章 數組和廣義錶
5.1 數組
5.2 特殊矩陣的壓縮存儲
5.2.1 三角矩陣、對稱矩陣和對角矩陣的壓縮存儲
5.2.2 稀疏矩陣的壓縮存儲
5.3 廣義錶
5.3.1 廣義錶抽象數據類型
5.3.2 廣義錶的存儲結構
5.3.3 廣義錶雙鏈錶示的實現
習題
實驗5 特殊矩陣和廣義錶的存儲和運算
第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.2.5 二叉樹的存儲結構
6.2.6 二叉樹的二叉鏈錶實現
6.3 綫索二叉樹
6.3.1 綫索二叉樹定義
6.3.2 中序綫索二叉樹
6.4 Huffman樹
6.4.1 Huffman編碼
6.4.2 Huffman樹及其構造算法
6.5 樹的錶示和實現
6.5.1 樹的遍曆規則
6.5.2 樹的存儲結構
6.5.3 樹的父母孩子兄弟鏈錶實現
習題
實驗6 樹和二叉樹的基本操作
第7章 圖
7.1 圖及其抽象數據類型
7.1.1 圖的基本概念
7.1.2 圖抽象數據類型
7.2 圖的錶示和實現
7.2.1 圖的鄰接矩陣錶示和實現
7.2.2 圖的鄰接錶錶示和實現
7.2.3 圖的鄰接多重錶錶示
7.3 圖的遍曆
7.3.1 圖的深度優先搜索遍曆
7.3.2 圖的廣度優先搜索遍曆
7.4 最小生成樹
7.4.1 生成樹
7.4.2 最小生成樹的構造算法
7.5 最短路徑
7.5.1 單源最短路徑
7.5.2 每對頂點間的最短路徑
習題
實驗7 圖的錶示和操作
第8章 查找
8.1 查找的基本概念
8.2 二分法查找
8.3 基於索引錶的分塊查找
8.4 散列
8.4.1 散列錶
8.4.2 散列映射
8.5 二叉排序樹和平衡二叉樹
8.5.1 二叉排序樹
8.5.2 樹映射
8.5.3 平衡二叉樹
習題
實驗8 查找算法
第9章 排序
9.1 插入排序
9.1.1 直接插入排序
9.1.2 希爾排序
9.2 交換排序
9.2.1 冒泡排序
9.2.2 快速排序
9.3 選擇排序
9.3.1 直接選擇排序
9.3.2 堆排序
9.4 歸並排序
9.5 綫性錶的排序算法
9.5.1 順序錶的排序算法
9.5.2 單鏈錶的排序算法
9.5.3 循環雙鏈錶的排序算法
習題
實驗9 排序算法設計及分析
第10章 綜閤應用設計
10.1 JAVA集閤框架
10.1.1 Comparator比較器接口
10.1.2 Arrays數組類
10.1.3 集閤
10.1.4 映射
10.2 實現迭代器
10.2.1 提供迭代器的類
10.2.2 基於迭代器的操作
10.3 算法設計策略
10.3.1 分治法
10.3.2 動態規劃法
10.3.3 貪心法
10.3.4 迴溯法
10.4 課程設計的目的、要求和選題
附錄A ASCII字符與Unicode值
附錄B Java關鍵字
附錄C Java基本數據類型
附錄D Java運算符及其優先級
附錄E Java類庫(部分)
E.1 java.lang語言包
E.2 java.util實用包
附錄F MyEclipse常用菜單命令
參考文獻
前言/序言
數據結構(Java版 第4版) 下載 mobi epub pdf txt 電子書 格式