《數(shù)據(jù)結(jié)構(gòu)與算法(Java版普通高等教育計(jì)算機(jī)規(guī)劃教材)》(作者羅文劼、王苗、張小莉)共包括8章內(nèi)容,詳細(xì)講述了線(xiàn)性結(jié)構(gòu)、樹(shù)結(jié)構(gòu)和圖結(jié)構(gòu)中的數(shù)據(jù)表示及數(shù)據(jù)處理的方法,并對(duì)查找和排序兩種重要的數(shù)據(jù)處理技術(shù)作了細(xì)致的探討。書(shū)中對(duì)每一類(lèi)數(shù)據(jù)結(jié)構(gòu)的分析均按照“邏輯結(jié)構(gòu)—存儲(chǔ)結(jié)構(gòu)—基本運(yùn)算的實(shí)現(xiàn)—時(shí)空性分析—典型例題—知識(shí)點(diǎn)小結(jié)—擴(kuò)展學(xué)習(xí)導(dǎo)讀—練習(xí)題—實(shí)驗(yàn)題”的順序來(lái)進(jìn)行,算法全部采用Java語(yǔ)言描述,很容易轉(zhuǎn)換成程序。《數(shù)據(jù)結(jié)構(gòu)與算法(Java版普通高等教育計(jì)算機(jī)規(guī)劃教材)》語(yǔ)言敘述通俗易懂,由淺入深,算法可讀性好,應(yīng)用性強(qiáng)。書(shū)中還配有大量算法設(shè)計(jì)的例子,便于讀者理解和掌握數(shù)據(jù)結(jié)構(gòu)中數(shù)據(jù)表示和數(shù)據(jù)處理的方法。
本書(shū)可作為高等院校計(jì)算機(jī)和信息類(lèi)相關(guān)專(zhuān)業(yè)“數(shù)據(jù)結(jié)構(gòu)”課程的教材,也可作為高職高專(zhuān)同類(lèi)專(zhuān)業(yè)的教學(xué)用書(shū)及各類(lèi)工程技術(shù)人員的參考用書(shū)。
第1章 數(shù)據(jù)結(jié)構(gòu)與算法
1.1 引言
1.1.1 為什么要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)
1.1.2 數(shù)據(jù)結(jié)構(gòu)課程的內(nèi)容
1.2 數(shù)據(jù)結(jié)構(gòu)的概念
1.2.1 基本概念和術(shù)語(yǔ)
1.2.2 抽象數(shù)據(jù)類(lèi)型
1.3 數(shù)據(jù)結(jié)構(gòu)的描述方法
1.3.1 數(shù)據(jù)結(jié)構(gòu)的C語(yǔ)言描述
1.3.2 數(shù)據(jù)結(jié)構(gòu)的C++語(yǔ)言描述
1.3.3 數(shù)據(jù)結(jié)構(gòu)的Java語(yǔ)言描述
1.4 算法
1.4.1 算法及其特征
出版說(shuō)明
前言
第1章 數(shù)據(jù)結(jié)構(gòu)與算法
1.1 引言
1.1.1 為什么要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)
1.1.2 數(shù)據(jù)結(jié)構(gòu)課程的內(nèi)容
1.2 數(shù)據(jù)結(jié)構(gòu)的概念
1.2.1 基本概念和術(shù)語(yǔ)
1.2.2 抽象數(shù)據(jù)類(lèi)型
1.3 數(shù)據(jù)結(jié)構(gòu)的描述方法
1.3.1 數(shù)據(jù)結(jié)構(gòu)的C語(yǔ)言描述
1.3.2 數(shù)據(jù)結(jié)構(gòu)的C++語(yǔ)言描述
1.3.3 數(shù)據(jù)結(jié)構(gòu)的Java語(yǔ)言描述
1.4 算法
1.4.1 算法及其特征
1.4.2 算法的描述
1.4.3 算法的性能分析
1.5 典型例題
1.6 本章小結(jié)
1.6.1 知識(shí)點(diǎn)小結(jié)
1.6.2 擴(kuò)展學(xué)習(xí)導(dǎo)讀
練習(xí)題
實(shí)驗(yàn)題
題目1比較算法復(fù)雜性描述函數(shù)的
增長(zhǎng)
題目2矩陣連乘算法的時(shí)間和空間
復(fù)雜度
第2章 遞歸
2.1 引言
2.1.1 問(wèn)題的提出
2.1.2 什么是遞歸
2.2 遞歸調(diào)用的實(shí)現(xiàn)原理
2.2.1 遞歸算法的構(gòu)成
2.2.2 遞歸調(diào)用的內(nèi)部過(guò)程
2.2.3 遞歸的正確性證明
2.3 遞歸轉(zhuǎn)化為非遞歸
2.3.1 遞歸轉(zhuǎn)化為遞推
2.3.2 遞歸轉(zhuǎn)化為回溯
2.3.3 手工模擬遞歸
2.4 典型例題
2.5 本章小結(jié)
2.5.1 知識(shí)點(diǎn)小結(jié)
2.5.2 擴(kuò)展學(xué)習(xí)導(dǎo)讀
練習(xí)題
實(shí)驗(yàn)題
題目1全排列的遞歸實(shí)現(xiàn)
題目2八皇后問(wèn)題
題目3比較遞歸與非遞歸算法的
時(shí)空效率
第3章 線(xiàn)性結(jié)構(gòu)
3.1 引言
3.1.1 問(wèn)題的提出
3.1.2 線(xiàn)性表的定義
3.1.3 線(xiàn)性表的基本運(yùn)算
3.2 線(xiàn)性表的順序存儲(chǔ)與實(shí)現(xiàn)
3.2.1 順序表
3.2.2 順序表上基本運(yùn)算的實(shí)現(xiàn)
3.2.3 順序表應(yīng)用舉例
3.3 線(xiàn)性表的鏈?zhǔn)酱鎯?chǔ)與實(shí)現(xiàn)
3.3.1 單鏈表
3.3.2 單鏈表上基本運(yùn)算的實(shí)現(xiàn)
3.3.3 循環(huán)鏈表
3.3.4 雙向鏈表
3.3.5 鏈表應(yīng)用舉例
3.4 順序表和鏈表的比較
3.5 堆棧
3.5.1 堆棧的定義及基本運(yùn)算
3.5.2 堆棧的存儲(chǔ)及運(yùn)算實(shí)現(xiàn)
3.5.3 堆棧的應(yīng)用舉例
3.6 隊(duì)列
3.6.1 隊(duì)列的定義及基本運(yùn)算
3.6.2 隊(duì)列的存儲(chǔ)及運(yùn)算實(shí)現(xiàn)
3.6.3 隊(duì)列的應(yīng)用舉例
3.7 其他線(xiàn)性結(jié)構(gòu)及擴(kuò)展
3.7.1 字符串
3.7.2 數(shù)組
3.7.3 特殊矩陣
3.7.4 稀疏矩陣
3.8 典型例題
3.9 本章小結(jié)
3.9.1 知識(shí)點(diǎn)小結(jié)
3.9.2 擴(kuò)展學(xué)習(xí)導(dǎo)讀
練習(xí)題
實(shí)驗(yàn)題
題目1Josephus環(huán)問(wèn)題
題目2一元多項(xiàng)式運(yùn)算
題目3模擬停車(chē)場(chǎng)管理
第4章 樹(shù)結(jié)構(gòu)
4.1 引言
4.1.1 問(wèn)題提出
4.1.2 相關(guān)概念
4.2 二叉樹(shù)
4.2.1 二叉樹(shù)的基本運(yùn)算
4.2.2 二叉樹(shù)的主要性質(zhì)
4.2.3 二叉樹(shù)的存儲(chǔ)
4.2.4 二叉樹(shù)基本運(yùn)算的實(shí)現(xiàn)
4.3 二叉樹(shù)的遍歷
4.3.1 遞歸方法實(shí)現(xiàn)二叉樹(shù)遍歷
4.3.2 非遞歸方法實(shí)現(xiàn)二叉樹(shù)的
三種遍歷
4.3.3 按層次遍歷二叉樹(shù)
4.4 二叉樹(shù)遍歷的應(yīng)用
4.4.1 構(gòu)造二叉樹(shù)的二叉鏈表存儲(chǔ)
4.4.2 在二叉樹(shù)中查找值為x的
數(shù)據(jù)元素
4.4.3 統(tǒng)計(jì)給定二叉樹(shù)中葉子結(jié)點(diǎn)的
數(shù)目
4.4.4 表達(dá)式運(yùn)算
4.4.5 由遍歷序列恢復(fù)二叉樹(shù)
4.5 線(xiàn)索二叉樹(shù)
4.5.1 線(xiàn)索二叉樹(shù)的定義及其結(jié)構(gòu)
4.5.2 線(xiàn)索二叉樹(shù)的創(chuàng)建
4.5.3 線(xiàn)索二叉樹(shù)的遍歷
4.6 最優(yōu)二叉樹(shù)
4.6.1 最優(yōu)二叉樹(shù)的概念
4.6.2 最優(yōu)二叉樹(shù)的構(gòu)造
4.6.3 最優(yōu)二叉樹(shù)的應(yīng)用——哈夫曼
編碼
4.7 樹(shù)
4.7.1 樹(shù)的基本操作
4.7.2 樹(shù)的表示
4.7.3 樹(shù)的存儲(chǔ)
4.7.4 樹(shù)和森林與二叉樹(shù)之間的
轉(zhuǎn)換
4.7.5 樹(shù)或森林的遍歷
4.7.6 樹(shù)的應(yīng)用
4.8 典型例題
4.9 本章小結(jié)
4.9.1 知識(shí)點(diǎn)小結(jié)
4.9.2 擴(kuò)展學(xué)習(xí)導(dǎo)讀
練習(xí)題
實(shí)驗(yàn)題
題目哈夫曼編碼/譯碼器
第5章 圖結(jié)構(gòu)
5.1 引言
5.1.1 問(wèn)題的提出
5.1.2 相關(guān)概念
5.1.3 圖的基本操作
5.2 圖的存儲(chǔ)
5.2.1 鄰接矩陣
5.2.2 鄰接表
5.3 圖的遍歷
5.3.1 深度優(yōu)先搜索
5.3.2 廣度優(yōu)先搜索
5.3.3 遍歷圖的簡(jiǎn)單應(yīng)用
5.4 生成樹(shù)和最小生成樹(shù)
5.4.1 生成樹(shù)和生成森林
5.4.2 最小生成樹(shù)
5.4.3 構(gòu)造最小生成樹(shù)的Prim算法
5.4.4 構(gòu)造最小生成樹(shù)的Kruskal
算法
5.5 最短路徑
5.5.1 單源點(diǎn)最短路徑——Dijkstra
算法
5.5.2 每一對(duì)頂點(diǎn)之間的最短路徑
5.6 拓?fù)渑判蚺c關(guān)鍵路徑
5.6.1 有向無(wú)環(huán)圖的概念
5.6.2 AOV網(wǎng)與拓?fù)渑判?br /> 5.6.3 AOE網(wǎng)與關(guān)鍵路徑
5.7 典型例題
5.8 本章小結(jié)
5.8.1 知識(shí)點(diǎn)小結(jié)
5.8.2 擴(kuò)展學(xué)習(xí)導(dǎo)讀
練習(xí)題
實(shí)驗(yàn)題
題目校園導(dǎo)游程序
第6章 查找技術(shù)
第7章 排序技術(shù)
第8章 擴(kuò)展應(yīng)用舉例
參考文獻(xiàn)
出版說(shuō)明
前言
第1章 數(shù)據(jù)結(jié)構(gòu)與算法
1.1 引言
1.1.1 為什么要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)
1.1.2 數(shù)據(jù)結(jié)構(gòu)課程的內(nèi)容
1.2 數(shù)據(jù)結(jié)構(gòu)的概念
1.2.1 基本概念和術(shù)語(yǔ)
1.2.2 抽象數(shù)據(jù)類(lèi)型
1.3 數(shù)據(jù)結(jié)構(gòu)的描述方法
1.3.1 數(shù)據(jù)結(jié)構(gòu)的C語(yǔ)言描述
1.3.2 數(shù)據(jù)結(jié)構(gòu)的C++語(yǔ)言描述
1.3.3 數(shù)據(jù)結(jié)構(gòu)的Java語(yǔ)言描述
1.4 算法
1.4.1 算法及其特征
出版說(shuō)明
前言
第1章 數(shù)據(jù)結(jié)構(gòu)與算法
1.1 引言
1.1.1 為什么要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)
1.1.2 數(shù)據(jù)結(jié)構(gòu)課程的內(nèi)容
1.2 數(shù)據(jù)結(jié)構(gòu)的概念
1.2.1 基本概念和術(shù)語(yǔ)
1.2.2 抽象數(shù)據(jù)類(lèi)型
1.3 數(shù)據(jù)結(jié)構(gòu)的描述方法
1.3.1 數(shù)據(jù)結(jié)構(gòu)的C語(yǔ)言描述
1.3.2 數(shù)據(jù)結(jié)構(gòu)的C++語(yǔ)言描述
1.3.3 數(shù)據(jù)結(jié)構(gòu)的Java語(yǔ)言描述
1.4 算法
1.4.1 算法及其特征
1.4.2 算法的描述
1.4.3 算法的性能分析
1.5 典型例題
1.6 本章小結(jié)
1.6.1 知識(shí)點(diǎn)小結(jié)
1.6.2 擴(kuò)展學(xué)習(xí)導(dǎo)讀
練習(xí)題
實(shí)驗(yàn)題
題目1比較算法復(fù)雜性描述函數(shù)的
增長(zhǎng)
題目2矩陣連乘算法的時(shí)間和空間
復(fù)雜度
第2章 遞歸
2.1 引言
2.1.1 問(wèn)題的提出
2.1.2 什么是遞歸
2.2 遞歸調(diào)用的實(shí)現(xiàn)原理
2.2.1 遞歸算法的構(gòu)成
2.2.2 遞歸調(diào)用的內(nèi)部過(guò)程
2.2.3 遞歸的正確性證明
2.3 遞歸轉(zhuǎn)化為非遞歸
2.3.1 遞歸轉(zhuǎn)化為遞推
2.3.2 遞歸轉(zhuǎn)化為回溯
2.3.3 手工模擬遞歸
2.4 典型例題
2.5 本章小結(jié)
2.5.1 知識(shí)點(diǎn)小結(jié)
2.5.2 擴(kuò)展學(xué)習(xí)導(dǎo)讀
練習(xí)題
實(shí)驗(yàn)題
題目1全排列的遞歸實(shí)現(xiàn)
題目2八皇后問(wèn)題
題目3比較遞歸與非遞歸算法的
時(shí)空效率
第3章 線(xiàn)性結(jié)構(gòu)
3.1 引言
3.1.1 問(wèn)題的提出
3.1.2 線(xiàn)性表的定義
3.1.3 線(xiàn)性表的基本運(yùn)算
3.2 線(xiàn)性表的順序存儲(chǔ)與實(shí)現(xiàn)
3.2.1 順序表
3.2.2 順序表上基本運(yùn)算的實(shí)現(xiàn)
3.2.3 順序表應(yīng)用舉例
3.3 線(xiàn)性表的鏈?zhǔn)酱鎯?chǔ)與實(shí)現(xiàn)
3.3.1 單鏈表
3.3.2 單鏈表上基本運(yùn)算的實(shí)現(xiàn)
3.3.3 循環(huán)鏈表
3.3.4 雙向鏈表
3.3.5 鏈表應(yīng)用舉例
3.4 順序表和鏈表的比較
3.5 堆棧
3.5.1 堆棧的定義及基本運(yùn)算
3.5.2 堆棧的存儲(chǔ)及運(yùn)算實(shí)現(xiàn)
3.5.3 堆棧的應(yīng)用舉例
3.6 隊(duì)列
3.6.1 隊(duì)列的定義及基本運(yùn)算
3.6.2 隊(duì)列的存儲(chǔ)及運(yùn)算實(shí)現(xiàn)
3.6.3 隊(duì)列的應(yīng)用舉例
3.7 其他線(xiàn)性結(jié)構(gòu)及擴(kuò)展
3.7.1 字符串
3.7.2 數(shù)組
3.7.3 特殊矩陣
3.7.4 稀疏矩陣
3.8 典型例題
3.9 本章小結(jié)
3.9.1 知識(shí)點(diǎn)小結(jié)
3.9.2 擴(kuò)展學(xué)習(xí)導(dǎo)讀
練習(xí)題
實(shí)驗(yàn)題
題目1Josephus環(huán)問(wèn)題
題目2一元多項(xiàng)式運(yùn)算
題目3模擬停車(chē)場(chǎng)管理
第4章 樹(shù)結(jié)構(gòu)
4.1 引言
4.1.1 問(wèn)題提出
4.1.2 相關(guān)概念
4.2 二叉樹(shù)
4.2.1 二叉樹(shù)的基本運(yùn)算
4.2.2 二叉樹(shù)的主要性質(zhì)
4.2.3 二叉樹(shù)的存儲(chǔ)
4.2.4 二叉樹(shù)基本運(yùn)算的實(shí)現(xiàn)
4.3 二叉樹(shù)的遍歷
4.3.1 遞歸方法實(shí)現(xiàn)二叉樹(shù)遍歷
4.3.2 非遞歸方法實(shí)現(xiàn)二叉樹(shù)的
三種遍歷
4.3.3 按層次遍歷二叉樹(shù)
4.4 二叉樹(shù)遍歷的應(yīng)用
4.4.1 構(gòu)造二叉樹(shù)的二叉鏈表存儲(chǔ)
4.4.2 在二叉樹(shù)中查找值為x的
數(shù)據(jù)元素
4.4.3 統(tǒng)計(jì)給定二叉樹(shù)中葉子結(jié)點(diǎn)的
數(shù)目
4.4.4 表達(dá)式運(yùn)算
4.4.5 由遍歷序列恢復(fù)二叉樹(shù)
4.5 線(xiàn)索二叉樹(shù)
4.5.1 線(xiàn)索二叉樹(shù)的定義及其結(jié)構(gòu)
4.5.2 線(xiàn)索二叉樹(shù)的創(chuàng)建
4.5.3 線(xiàn)索二叉樹(shù)的遍歷
4.6 最優(yōu)二叉樹(shù)
4.6.1 最優(yōu)二叉樹(shù)的概念
4.6.2 最優(yōu)二叉樹(shù)的構(gòu)造
4.6.3 最優(yōu)二叉樹(shù)的應(yīng)用——哈夫曼
編碼
4.7 樹(shù)
4.7.1 樹(shù)的基本操作
4.7.2 樹(shù)的表示
4.7.3 樹(shù)的存儲(chǔ)
4.7.4 樹(shù)和森林與二叉樹(shù)之間的
轉(zhuǎn)換
4.7.5 樹(shù)或森林的遍歷
4.7.6 樹(shù)的應(yīng)用
4.8 典型例題
4.9 本章小結(jié)
4.9.1 知識(shí)點(diǎn)小結(jié)
4.9.2 擴(kuò)展學(xué)習(xí)導(dǎo)讀
練習(xí)題
實(shí)驗(yàn)題
題目哈夫曼編碼/譯碼器
第5章 圖結(jié)構(gòu)
5.1 引言
5.1.1 問(wèn)題的提出
5.1.2 相關(guān)概念
5.1.3 圖的基本操作
5.2 圖的存儲(chǔ)
5.2.1 鄰接矩陣
5.2.2 鄰接表
5.3 圖的遍歷
5.3.1 深度優(yōu)先搜索
5.3.2 廣度優(yōu)先搜索
5.3.3 遍歷圖的簡(jiǎn)單應(yīng)用
5.4 生成樹(shù)和最小生成樹(shù)
5.4.1 生成樹(shù)和生成森林
5.4.2 最小生成樹(shù)
5.4.3 構(gòu)造最小生成樹(shù)的Prim算法
5.4.4 構(gòu)造最小生成樹(shù)的Kruskal
算法
5.5 最短路徑
5.5.1 單源點(diǎn)最短路徑——Dijkstra
算法
5.5.2 每一對(duì)頂點(diǎn)之間的最短路徑
5.6 拓?fù)渑判蚺c關(guān)鍵路徑
5.6.1 有向無(wú)環(huán)圖的概念
5.6.2 AOV網(wǎng)與拓?fù)渑判?br /> 5.6.3 AOE網(wǎng)與關(guān)鍵路徑
5.7 典型例題
5.8 本章小結(jié)
5.8.1 知識(shí)點(diǎn)小結(jié)
5.8.2 擴(kuò)展學(xué)習(xí)導(dǎo)讀
練習(xí)題
實(shí)驗(yàn)題
題目校園導(dǎo)游程序
第6章 查找技術(shù)
第7章 排序技術(shù)
第8章 擴(kuò)展應(yīng)用舉例
參考文獻(xiàn)