數(shù)據(jù)結(jié)構(gòu)實(shí)用教程

出版時(shí)間:2012-11  出版社:清華大學(xué)出版社  作者:張居曉,葛武滇,喬正洪,朱勝?gòu)?qiáng) 編著  頁(yè)數(shù):340  字?jǐn)?shù):533000  

內(nèi)容概要

  《高職高專工作過程·立體化創(chuàng)新規(guī)劃教材·計(jì)算機(jī)系列:數(shù)據(jù)結(jié)構(gòu)實(shí)用教程》依據(jù)高職高專計(jì)算機(jī)基礎(chǔ)教育的特點(diǎn),結(jié)合作者多年從事計(jì)算機(jī)教育的經(jīng)驗(yàn)編寫而成。全書共10章,主要內(nèi)容包括緒論、線性表、棧和隊(duì)列、串、數(shù)組及廣義表、樹、圖、查找、排序以及綜合實(shí)訓(xùn)。
  《高職高專工作過程·立體化創(chuàng)新規(guī)劃教材·計(jì)算機(jī)系列:數(shù)據(jù)結(jié)構(gòu)實(shí)用教程》以“工作場(chǎng)景導(dǎo)入”一“知識(shí)講解”一“回到工作場(chǎng)景”一“工作實(shí)訓(xùn)營(yíng)”為主線編寫,以例題配合深入學(xué)習(xí),知識(shí)講解細(xì)致。同時(shí),每章都有配套的實(shí)訓(xùn)練習(xí),突出了實(shí)用性和操作性,另外還提供了實(shí)踐中常見問題解析,能夠進(jìn)一步拓展學(xué)生的知識(shí),靈活應(yīng)對(duì)實(shí)際操作時(shí)會(huì)遇到的困難,使學(xué)生提高操作能力。本書結(jié)構(gòu)清晰、易教易學(xué)、實(shí)例豐富、可操作性強(qiáng)、學(xué)以致用、注重能力的培養(yǎng)。
  《高職高專工作過程·立體化創(chuàng)新規(guī)劃教材·計(jì)算機(jī)系列:數(shù)據(jù)結(jié)構(gòu)實(shí)用教程》注重實(shí)際應(yīng)用,既可作為高職高專院校計(jì)算機(jī)及相關(guān)專業(yè)的教材,也可作為各類培訓(xùn)班的培訓(xùn)教程。此外,本書也適合于有關(guān)工程技術(shù)人員、技師參考閱讀。

書籍目錄

第1章 緒論
1.1 什么是數(shù)據(jù)結(jié)構(gòu)
1.1.1 數(shù)據(jù)結(jié)構(gòu)的產(chǎn)生與發(fā)展
1.1.2 數(shù)據(jù)和數(shù)據(jù)結(jié)構(gòu)
1.1.3 數(shù)據(jù)的邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu)
1.1.4 數(shù)據(jù)類型
1.2 算法與算法分析
1.2.1 算法
1.2.2 算法設(shè)計(jì)的目標(biāo)
1.2.3 算法設(shè)計(jì)的時(shí)間復(fù)雜度
1.2.4 算法設(shè)計(jì)的空間復(fù)雜度
本章小結(jié)
習(xí)題
第2章 線性表
2.1 工作場(chǎng)景導(dǎo)入
2.2 線性表的定義和基本操作
2.2.1 線性表的定義
2.2.2 線性表的基本操作
2.3 線性表的順序存儲(chǔ)結(jié)構(gòu)
2.3.1 順序表的特點(diǎn)
2.3.2 順序表的基本操作
2.4 線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
2.4.1 單鏈表
2.4.2 雙向鏈表
2.4.3 循環(huán)鏈表
2.5 回到工作場(chǎng)景
2.6 工作實(shí)訓(xùn)營(yíng)
2.6.1 訓(xùn)練實(shí)例
2.6.2 常見問題解析
本章小結(jié)
習(xí)題
第3章 棧和隊(duì)列
3.1 工作場(chǎng)景導(dǎo)入
3.2 棧
3.2.1 棧的概念及操作
3.2.2 棧的實(shí)現(xiàn)與基本操作
3.2.3 棧的應(yīng)用
3.3 隊(duì)列
3.3.1 隊(duì)列的概念及操作
3.3.2 循環(huán)隊(duì)列
3.3.3 隊(duì)列的基本操作實(shí)現(xiàn)
3.3.4 隊(duì)列的應(yīng)用
3.4 回到工作場(chǎng)景
3.5 工作實(shí)訓(xùn)營(yíng)
3.5.1 訓(xùn)練實(shí)例一:模擬排隊(duì)看病
3.5.2 訓(xùn)練實(shí)例二:模擬計(jì)算器
3.5.3 常見問題解析
本章小結(jié)
習(xí)題
第4章 串
4.1 工作場(chǎng)景導(dǎo)入
4.2 串的基本概念
4.3 串的順序存儲(chǔ)結(jié)構(gòu)與基本操作
4.4 串的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
4.5 串的模式匹配
4.5.1 Brute.Force算法
4.5.2 KMP算法
4.6 回到工作場(chǎng)景
4.7 工作實(shí)訓(xùn)營(yíng)
4.7.1 訓(xùn)練實(shí)例
4.7.2 常見問題解析
本章小結(jié)
習(xí)題
第5章 數(shù)組及廣義表
5.1 工作場(chǎng)景導(dǎo)入
5.2 數(shù)組的定義
5.3 數(shù)組的順序存儲(chǔ)結(jié)構(gòu)與實(shí)現(xiàn)
5.3.1 數(shù)組的順序存儲(chǔ)結(jié)構(gòu)
5.3.2 基本操作的實(shí)現(xiàn)
5.3.3 數(shù)組的應(yīng)用舉例
5.4 矩陣的壓縮存儲(chǔ)
5.4.1 特殊矩陣
5.4.2 稀疏矩陣
5.5 廣義表
5.5.1 廣義表的定義
5.5.2 廣義表的存儲(chǔ)結(jié)構(gòu)
5.5.3 廣義表的應(yīng)用
5.6 回到工作場(chǎng)景
5.7 工作實(shí)訓(xùn)營(yíng)
5.7.1 訓(xùn)練實(shí)例
5.7.2 常見問題解析
本章小結(jié)
習(xí)題
第6章 樹
6.1 工作場(chǎng)景導(dǎo)入
6.2 樹的基本概念
6.2.1 樹的定義
6.2.2 樹的基本術(shù)語(yǔ)
6.3 二叉樹
6.3.1 二叉樹的基本概念
6.3.2 二叉樹的存儲(chǔ)結(jié)構(gòu)
6.4 二叉樹的遍歷
6.4.1 二叉樹的前序遍歷
6.4.2 二叉樹的中序遍歷
6.4.3 二叉樹的后序遍歷
6.5 線索二叉樹
6.5.1 線索二叉樹的定義
6.5.2 中序線索二叉樹
6.6 樹和森林
6.6.1 樹的存儲(chǔ)結(jié)構(gòu)
6.6.2 森林、樹、二叉樹的相互轉(zhuǎn)化
6.6.3 樹和森林的遍歷
6.7 哈夫曼樹及其應(yīng)用
6.7.1 哈夫曼樹的概念
6.7.2 哈夫曼編碼
6.8 回到工作場(chǎng)景
6.9 工作實(shí)訓(xùn)營(yíng)
6.9.1 訓(xùn)練實(shí)例
6.9.2 常見問題解析
本章小結(jié)
習(xí)題
第7章 圖
7.1 工作場(chǎng)景導(dǎo)入
7.2 圖的基本概念與存儲(chǔ)方式
7.2.1 鄰接矩陣表示法
7.2.2 鄰接表表示法
7.3 圖的遍歷
7.3.1 深度優(yōu)先搜索遍歷
7.3.2 廣度優(yōu)先搜索遍歷
7.3.3 遍歷算法的實(shí)現(xiàn)
7.4 生成樹和最小生成樹
7.4.1 生成樹
7.4.2 最小生成樹
7.4.3 普里姆算法
7.4.4 克魯斯卡爾算法
7.5 最短路徑
7.5.1 單源點(diǎn)最短路徑
7.5.2 所有頂點(diǎn)對(duì)最短路徑問題
7.6 回到工作場(chǎng)景
7.7 工作實(shí)訓(xùn)營(yíng)
7.7.1 訓(xùn)練實(shí)例
7.7.2 常見問題解析
本章小結(jié)
習(xí)題
第8章 查找
8.1 工作場(chǎng)景導(dǎo)入
8.2 查找的基本概念
8.3 順序查找
8.4 二分查找
8.5 分塊查找
^
第9章 排序
第10章 綜合實(shí)訓(xùn)
附錄 習(xí)題參考答案
參考文獻(xiàn)

章節(jié)摘錄

版權(quán)頁(yè):   插圖:   【問題3】已知某帶權(quán)連通無向圖邊的個(gè)數(shù)遠(yuǎn)遠(yuǎn)小于頂點(diǎn)的個(gè)數(shù),若求其最小生成樹用哪種算法最好? 【答】用克魯斯卡爾(Kruskal)算法較好。該算法的時(shí)間復(fù)雜度是O。 該算法的基本思想:假設(shè)G=(V,E)是一個(gè)具有n個(gè)頂點(diǎn)e條邊的連通圖,T=(U,TE)是G的最小生成樹,U的初值等于K即包含有G中的全部頂點(diǎn),TE的初值為空集。該算法的基本思想是:將G中的邊按權(quán)值從小到大的川頁(yè)序依次選取,若選取的邊使生成樹T形成回路,則將其舍棄,如此進(jìn)行下去,直到TE中包含n一1條邊為止,此時(shí)的T即為最小生成樹。 【問題4】在求每?jī)蓚€(gè)頂點(diǎn)間的最短路徑的(Floyd)算法中有什么要求? 【答】Floyd算法在使用中的限制:圖中允許負(fù)邊,但圖中不能含有帶負(fù)權(quán)值的邊組成的回路。 【問題5】求有向無環(huán)圖的拓?fù)湫蛄袝r(shí),其結(jié)果為何不唯一? 【答】因?yàn)榭赡艽嬖趎個(gè)結(jié)點(diǎn)的入度都為0,選擇從哪一個(gè)開始排序?qū)Q定排序的順序。 【問題6】怎樣判斷一個(gè)有向圖是否有回路? 【答】拓樸排序可以判斷圖中是否有回路,當(dāng)拓?fù)渑判蜻M(jìn)行到圖中沒有入度(或出度)為0的結(jié)點(diǎn),但還有結(jié)點(diǎn)沒有被排序的情況,則說明有回路。 每次將一個(gè)沒有入度的結(jié)點(diǎn)從圖中刪除,并刪除從此結(jié)點(diǎn)出發(fā)的邊。如果最后沒有結(jié)點(diǎn)剩余,則說明該有向圖不存在回路。 對(duì)于一個(gè)n個(gè)結(jié)點(diǎn)的無向連通圖,該圖無環(huán)當(dāng)且僅當(dāng)它只有n—1條邊。由圖的邊數(shù)和度數(shù)的關(guān)系可知,如果一個(gè)無向圖所有頂點(diǎn)的度≥2,則它邊數(shù)至少為n。所以該無向連通圖必存在回路。 【問題7】如何用圖的框架及其遍歷方法解決背包問題? 【答】背包問題是指:設(shè)有n個(gè)物品,其重量分別為W1,W2,…,Wn,所有物品的重量之和大于等于背包所能放置的重量S,要求從中找出若干物品放入背包中,使得其重量之和正好為S的所情況。 假設(shè)有5個(gè)物品的有向圖如圖7—22所示。 對(duì)圖7—22所示的有向圖,采用圖的深度優(yōu)先遍歷算法分別從頂點(diǎn)W1、W2、W3、W4、W5開始進(jìn)行深度優(yōu)先遍歷,且判斷訪問的頂點(diǎn)序列的權(quán)值之和是否為S,若是,則輸出,否則繼續(xù)。若設(shè)S=50,n=5,(W1,W2,W3,W4,W5)=(29,19,18,3,2),則滿足要求的所有輸出序列為: (1) 29, 19, 2 (2) 29, 18, 3 通常圖的深度優(yōu)先遍歷是基于鄰接表存儲(chǔ)結(jié)構(gòu),而n個(gè)物品的重量是存放在數(shù)組W[1..n]中的,若按照?qǐng)D7—4格式建立鄰接表,將增加算法的存儲(chǔ)空間。為此,將教組W[1..n]看成為虛擬的鄰接表,其中W[i]的鄰接點(diǎn)為W[i+1],W[i+2],…,W[n],則得到“背包”問題的遞歸和非遞歸算法。我們只介紹解決“背包”問題的遞歸算法。

編輯推薦

《高職高專工作過程?立體化創(chuàng)新規(guī)劃教材?計(jì)算機(jī)系列:數(shù)據(jù)結(jié)構(gòu)實(shí)用教程》注重實(shí)際應(yīng)用,既可作為高職高專院校計(jì)算機(jī)及相關(guān)專業(yè)的教材,也可作為各類培訓(xùn)班的培訓(xùn)教程。此外,《高職高專工作過程?立體化創(chuàng)新規(guī)劃教材?計(jì)算機(jī)系列:數(shù)據(jù)結(jié)構(gòu)實(shí)用教程》也適合于有關(guān)工程技術(shù)人員、技師參考閱讀。

圖書封面

評(píng)論、評(píng)分、閱讀與下載


    數(shù)據(jù)結(jié)構(gòu)實(shí)用教程 PDF格式下載


用戶評(píng)論 (總計(jì)0條)

 
 

 

250萬本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7