數(shù)據(jù)結(jié)構(gòu)(C++版)(第二版)習(xí)題解答及實訓(xùn)指導(dǎo)

-
【作 者】李根強(qiáng)
【I S B N 】978-7-5084-6559-3
【責(zé)任編輯】張玉玲
【適用讀者群】本科
【出版時間】2009-06-01
【開 本】16開本
【裝幀信息】平裝(光膜)
【版 次】第1版
【頁 數(shù)】304
【千字?jǐn)?shù)】
【印 張】
【定 價】¥28
【叢 書】普通高等教育“十一五”國家級規(guī)劃教材配套參考書
【備注信息】
簡介
本書特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關(guān)圖書
本書是與《數(shù)據(jù)結(jié)構(gòu)(C++版)》(第二版)(李根強(qiáng)主編)一書相配套的輔導(dǎo)教材。全書包含3部分內(nèi)容:配套教材的習(xí)題解答及典型例題分析、上機(jī)實訓(xùn)指導(dǎo)、模擬試題及參考答案。本書除給出配套教材中習(xí)題的解答外,還給出了典型例題的算法分析、算法實現(xiàn);上機(jī)實訓(xùn)部分給出了上機(jī)實訓(xùn)內(nèi)容10個,每個上機(jī)實訓(xùn)內(nèi)容包含多個上機(jī)題目,有實訓(xùn)目的、算法提示、算法分析、算法實現(xiàn),各院校相關(guān)人員可根據(jù)實際情況選取;最后,作為本書的結(jié)束部分,給出了10套模擬試題,以檢測學(xué)生學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)、掌握數(shù)據(jù)結(jié)構(gòu)知識的程度。10套模擬試題中,一部分內(nèi)容是歷年碩士研究生的入學(xué)考試題,對準(zhǔn)備參加碩士研究生考試的本科生來說,有一定的參考價值。
本書內(nèi)容豐富、題型多樣、涉及面廣、適應(yīng)性強(qiáng),與《數(shù)據(jù)結(jié)構(gòu)(C++版)》(第二版)一書的內(nèi)容緊密結(jié)合。既可以供高等院校本、專科學(xué)生使用,也可以作為碩士研究生入學(xué)考試的參考書,也可供各類學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的人員參考使用。
1.配套教材的習(xí)題解答及典型例題分析、上機(jī)實訓(xùn)指導(dǎo)、模擬試題及參考答案
2.典型例題的算法分析、算法實現(xiàn)
3.10個上機(jī)實訓(xùn)內(nèi)容,均有實訓(xùn)目的、算法提示、算法分析、算法實現(xiàn)
4.10套模擬試題,以檢測學(xué)生學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)、掌握數(shù)據(jù)結(jié)構(gòu)知識的程度
5.與《數(shù)據(jù)結(jié)構(gòu)(C++版)》一書的內(nèi)容緊密結(jié)合
數(shù)據(jù)結(jié)構(gòu)課程是計算機(jī)專業(yè)及相關(guān)專業(yè)的一門重要專業(yè)基礎(chǔ)課,也是一門必修的核心課程。在計算機(jī)科學(xué)的各領(lǐng)域中,都將會用到各種不同的數(shù)據(jù)結(jié)構(gòu),如編譯系統(tǒng)中要使用棧、散列表、語法樹等;操作系統(tǒng)中要使用隊列、存儲管理表、目錄樹等;數(shù)據(jù)庫系統(tǒng)中要使用線性表、鏈表、索引樹等;人工智能中要使用廣義表、檢索樹、有向圖等;同樣在面向?qū)ο蟮某绦蛟O(shè)計、計算機(jī)圖形學(xué)、軟件工程、多媒體技術(shù)、計算機(jī)輔助設(shè)計等領(lǐng)域,都將會用到各種不同的數(shù)據(jù)結(jié)構(gòu)。因此,學(xué)好數(shù)據(jù)結(jié)構(gòu)這門課程,對于從事計算機(jī)技術(shù)及相關(guān)領(lǐng)域工作的人員來說是非常重要的,它可以使你掌握好各種不同的數(shù)據(jù)結(jié)構(gòu)、在什么場合使用及算法的具體實現(xiàn),以及每一種算法的時間復(fù)雜度分析和空間復(fù)雜度分析,知道在哪種情況下使用哪種數(shù)據(jù)結(jié)構(gòu)最方便,為以后開發(fā)大型程序而使用各種不同的數(shù)據(jù)結(jié)構(gòu)奠定基礎(chǔ)。
由于數(shù)據(jù)結(jié)構(gòu)的原理和算法比較抽象,而該課程一般在剛學(xué)完程序設(shè)計后開設(shè),學(xué)生程序設(shè)計方面的知識較少,因此,對于僅具有一些計算機(jī)程序設(shè)計知識的初學(xué)者來說,理解和掌握數(shù)據(jù)結(jié)構(gòu)中的原理和算法就比較困難,在解答數(shù)據(jù)結(jié)構(gòu)習(xí)題時,往往感到無從下手,更不知道算法如何描述、如何編寫,作者在多年的教學(xué)過程中深有感觸。作者通過多年的教學(xué)實踐,收集、整理進(jìn)而編寫了這本《數(shù)據(jù)結(jié)構(gòu)(C++版)(第二版)習(xí)題解答及實訓(xùn)指導(dǎo)》,目的是通過對習(xí)題的解答,使學(xué)生充分掌握數(shù)據(jù)結(jié)構(gòu)的原理、求解數(shù)據(jù)結(jié)構(gòu)問題的思路和方法,以及最后編寫出正確的算法,進(jìn)一步加深對基本概念的理解,提高分析問題和解決問題的能力,為整個專業(yè)的學(xué)習(xí)打下堅實基礎(chǔ),為適應(yīng)今后的大型軟件開發(fā)提供和積累較豐富的經(jīng)驗。
本書是《數(shù)據(jù)結(jié)構(gòu)(C++版)》(第二版)的配套指導(dǎo)教材。全書內(nèi)容共分三大部分。第一部分為習(xí)題解答部分,包含配套教材中的習(xí)題和一些綜合題,主要是對配套教材中的習(xí)題給出解答思路提示、算法分析,最后再給出完整的答案、算法或程序。每章的習(xí)題都包含基本概念和算法設(shè)計方面的題型,以幫助學(xué)生掌握數(shù)據(jù)結(jié)構(gòu)的基本概念,提高用各種不同的數(shù)據(jù)結(jié)構(gòu)分析問題、解決問題的能力。第二部分為上機(jī)實驗及指導(dǎo)部分,包含C++的上機(jī)環(huán)境介紹,并給出了10個上機(jī)實習(xí)內(nèi)容,每個上機(jī)實習(xí)都給出了多道上機(jī)題目,在每個上機(jī)實習(xí)中,都介紹了實習(xí)目的、采用的主要方法和算法設(shè)計技巧,最后給出了完整的C++源程序來實現(xiàn)算法,所有C++源程序都在C++環(huán)境下運行通過。通過這些實驗,可以使學(xué)生了解并學(xué)會如何運用數(shù)據(jù)結(jié)構(gòu)知識去解決現(xiàn)實世界中的某些實際問題,并具備設(shè)計較復(fù)雜算法的基本能力。第三部分為模擬試題部分,包含模擬試題和參考答案。模擬試題主要是為了幫助學(xué)生在學(xué)完數(shù)據(jù)結(jié)構(gòu)課程后自我檢驗學(xué)習(xí)的效果。有易、較易、中等、較難等各種難度的題目分布在各套試題中,每套試題中有選擇、判斷、填空、應(yīng)用、算法設(shè)計等各種題型,試題覆蓋了教材中的大部分知識點,有助于學(xué)生對課程的系統(tǒng)復(fù)習(xí)。
本書的目的是幫助學(xué)生學(xué)好數(shù)據(jù)結(jié)構(gòu)這門課程,所以在使用本書的過程中,請注意以下幾點:第一,使用該書要與《數(shù)據(jù)結(jié)構(gòu)(C++版)》(第二版)這本教材配套使用,以便與課程內(nèi)容同步,有利于進(jìn)一步掌握和理解各種基礎(chǔ)知識,加深對課堂所講授內(nèi)容的理解;第二,算法設(shè)計是不唯一的,每道題除了書中給出的算法外,讀者可能還會有其他的算法,這說明讀者對這方面的知識掌握得很好;第三,該習(xí)題解答及指導(dǎo)是幫助學(xué)習(xí)和理解數(shù)據(jù)結(jié)構(gòu)知識的,請學(xué)生在做作業(yè)前,先自己動腦思考、動手寫,不要盲目照抄,否則只會收到事倍功半的效果。
本書的最大特點是采用面向?qū)ο蟮某绦蛟O(shè)計語言(C++語言)作為算法的描述語言,所有算法都已經(jīng)上機(jī)調(diào)試通過。但是,由于篇幅所限,大部分算法都是以單獨的函數(shù)形式給出,若讀者要運行這些算法,還必須給出一些變量的說明及主函數(shù)來調(diào)用所給的函數(shù)。因此,本書中的算法描述比原來數(shù)據(jù)結(jié)構(gòu)教材中用類C/C++語言描述算法更直觀,學(xué)生更容易理解和接受。作者在十幾年的數(shù)據(jù)結(jié)構(gòu)課程教學(xué)中,對數(shù)據(jù)結(jié)構(gòu)中的各種算法進(jìn)行了認(rèn)真的研究和分析,在這方面積累了豐富的經(jīng)驗,因此,本書中所選的綜合題和習(xí)題都具有一定的針對性,都是針對特定的數(shù)據(jù)結(jié)構(gòu)來進(jìn)行描述的,方便學(xué)生理解和接受,并能為復(fù)雜的數(shù)據(jù)結(jié)構(gòu)算法描述架橋鋪路。
本書可以作為高等院校本、專科學(xué)生和教師學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的參考資料,也可以作為數(shù)據(jù)結(jié)構(gòu)自學(xué)者的參考書和參加碩士研究生入學(xué)考試的參考教材,同時還可供從事計算機(jī)應(yīng)用工作的工程與技術(shù)人員參考。選用該指導(dǎo)書上機(jī)實習(xí)的學(xué)校,可以根據(jù)學(xué)校本身的條件,在10個實習(xí)題中有針對性地選擇一部分或者全選。
本書由李根強(qiáng)任主編,負(fù)責(zé)全書的統(tǒng)稿、修改、定稿工作,倪飛舟、鐘志水、郭清溥任副主編。主要編寫人員分工如下:李根強(qiáng)編寫第一部分的第6~8章和第二部分的第2章,倪飛舟編寫第一部分的第1~3章和第二部分的第1章,鐘志水編寫第一部分的第4、5章,史瑞芳編寫第三部分,郭清溥編寫第一部分的第9~11章。另外參加本書部分編寫工作的還有:王剛、汪貴生、姚?、袁雋媛、蔡益紅、謝月娥、秦志、杜四春、銀紅霞、滿淑穎等。在本書的編寫過程中,得到了湖南大學(xué)計算機(jī)與通信學(xué)院老師的大力支持,在此深表感謝。
由于時間倉促及作者水平有限,書中不妥和錯誤之處在所難免,敬請廣大讀者批評指正。
第一部分 習(xí)題與解答
第1章 緒論 1
1.1 基本概念 1
1.1.1 數(shù)據(jù)結(jié)構(gòu) 1
1.1.2 存儲方式 1
1.1.3 算法及評價 1
1.2 習(xí)題及解答 2
1.2.1 配套教材中的習(xí)題 2
1.2.2 綜合題 10
第2章 線性表 14
2.1 線性表的基本概念及其運算 14
2.1.1 順序表 14
2.1.2 線性鏈表 14
2.1.3 雙向鏈表 14
2.1.4 循環(huán)鏈表 14
2.2 習(xí)題及解答 14
2.2.1 配套教材中的習(xí)題 14
2.2.2 綜合題 32
第3章 棧和隊列 38
3.1 基本概念及其運算 38
3.1.1 棧 38
3.1.2 隊列 38
3.2 習(xí)題及解答 38
3.2.1 配套教材中的習(xí)題 38
3.2.2 綜合題 47
第4章 串 54
4.1 基本概念及運算 54
4.1.1 串的順序存儲及運算 54
4.1.2 串的鏈?zhǔn)酱鎯斑\算 54
4.2 習(xí)題及解答 54
4.2.1 配套教材中的習(xí)題 54
4.2.2 綜合題 63
第5章 多維數(shù)組和廣義表 68
5.1 基本概念及運算 68
5.1.1 多維數(shù)組的概念及存儲 68
5.1.2 特殊矩陣及壓縮存儲 68
5.1.3 稀疏矩陣及壓縮存儲 68
5.1.4 廣義表的存儲及運算 68
5.2 習(xí)題及解答 69
5.2.1 配套教材中的習(xí)題 69
5.2.2 綜合題 76
第6章 樹和二叉樹 82
6.1 樹的基本概念 82
6.1.1 樹的定義 82
6.1.2 基本術(shù)語 82
6.1.3 樹的表示 83
6.2 二叉樹的基本概念和性質(zhì) 83
6.2.1 二叉樹的定義 83
6.2.2 二叉樹的性質(zhì) 83
6.2.3 二叉樹的存儲結(jié)構(gòu) 84
6.2.4 二叉樹的基本運算 84
6.2.5 二叉樹的應(yīng)用 84
6.2.6 樹、森林和二叉樹之間的相互關(guān)系 84
6.3 習(xí)題及解答 84
6.3.1 配套教材中的習(xí)題 84
6.3.2 綜合題 94
第7章 圖 103
7.1 圖的基本概念及運算 103
7.1.1 圖的基本術(shù)語 103
7.1.2 圖的存儲形式 104
7.1.3 圖的基本運算 104
7.2 習(xí)題及解答 104
7.2.1 配套教材中的習(xí)題 104
7.2.2 綜合題 126
第8章 查找 135
8.1 基本概念 135
8.1.1 順序查找 135
8.1.2 二分查找 135
8.1.3 分塊查找 135
8.1.4 二叉排序樹查找 135
8.1.5 散列查找 136
8.2 習(xí)題及解答 136
8.2.1 配套教材中的習(xí)題 136
8.2.2 綜合題 142
第9章 內(nèi)排序 148
9.1 基本概念 148
9.1.1 插入排序 148
9.1.2 交換排序 148
9.1.3 選擇排序 148
9.1.4 歸并排序 148
9.1.5 分配排序 148
9.2 習(xí)題及解答 148
9.2.1 配套教材中的習(xí)題 148
9.2.2 綜合題 159
第10章 外排序 164
10.1 外排序的基本概念 164
10.1.1 基本概念 164
10.1.2 初始?xì)w并段的生成 164
10.1.3 多路平衡歸并 164
10.2 習(xí)題及解答 164
第11章 文件 177
11.1 文件的基本概念 177
11.1.1 基本概念 177
11.1.2 文件的存儲和組織 177
11.2 習(xí)題及解答 178
第二部分 實訓(xùn)指導(dǎo)
第1章 上機(jī)環(huán)境 180
1.1 Turbo C++上機(jī)環(huán)境 180
1.1.1 建立C++源程序 180
1.1.2 打開已存在的C++源程序 180
1.1.3 編譯并運行C++源程序 181
1.2 Visual C++上機(jī)環(huán)境 183
1.2.1 新建C++源程序并編譯和運行 183
1.2.2 打開已經(jīng)存在的源程序并編譯和運行 187
1.2.3 源程序的保存 189
第2章 實訓(xùn)內(nèi)容 190
實訓(xùn)題一 線性表的順序存儲 190
實訓(xùn)題二 線性表的鏈?zhǔn)酱鎯?nbsp;194
實訓(xùn)題三 棧和隊列的應(yīng)用 203
實訓(xùn)題四 多維數(shù)組的應(yīng)用 212
實訓(xùn)題五 二叉樹的遍歷和應(yīng)用 218
實訓(xùn)題六 哈夫曼樹的建立及應(yīng)用 227
實訓(xùn)題七 圖的鄰接矩陣和遍歷 229
實訓(xùn)題八 圖的鄰接表和遍歷 232
實訓(xùn)題九 查找 235
實訓(xùn)題十 排序 239
第三部分 模擬試題及參考答案
模擬試題一 247
模擬試題二 250
模擬試題三 253
模擬試題四 255
模擬試題五 258
模擬試題六 260
模擬試題七 263
模擬試題八 265
模擬試題九 269
模擬試題十 272
模擬試題一參考答案 275
模擬試題二參考答案 277
模擬試題三參考答案 279
模擬試題四參考答案 281
模擬試題五參考答案 282
模擬試題六參考答案 283
模擬試題七參考答案 285
模擬試題八參考答案 286
模擬試題九參考答案 289
模擬試題十參考答案 291
參考文獻(xiàn) 294
- 程序設(shè)計基礎(chǔ)實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- 數(shù)據(jù)結(jié)構(gòu)(Python語言描述) [曹岳輝 劉衛(wèi)國 康松林 編著]
- C++程序設(shè)計實踐教程(第三版) [主編 劉衛(wèi)國 曹岳輝]
- C++程序設(shè)計(第三版) [主編 曹岳輝 劉衛(wèi)國]
- 數(shù)據(jù)挖掘算法—基于C++及CUDA C [蒂莫西•馬斯特斯(Timothy]
- 數(shù)據(jù)結(jié)構(gòu)——C語言(微課版) [主編 梁海英]
- C++程序設(shè)計簡明教程 [黃能耿 黃致遠(yuǎn) 胡麗丹]
- Visual C++6.0程序項目案例教程 [朱 銘 曾強(qiáng)聰 編著]
- 嵌入式應(yīng)用Qt_C++傳感數(shù)據(jù)采集開發(fā)實訓(xùn)教程 [主編 劉和文 文燕 謝忠敏]
- 數(shù)據(jù)結(jié)構(gòu)(C語言版)習(xí)題解答及實訓(xùn)指導(dǎo) [李根強(qiáng) 謝月娥]
- 數(shù)據(jù)結(jié)構(gòu)(C語言版) [主編 李根強(qiáng) 劉浩 謝月娥]
- 數(shù)據(jù)結(jié)構(gòu)(Java版) [主編 李云平]
- C++程序設(shè)計簡明教程(第二版) [主 編 王曉東 副主編 陳艷海 ]
- C++ STL基礎(chǔ)案例教程 [鐘琪 著]
- 數(shù)據(jù)結(jié)構(gòu) [主編 韓利凱 朱浩悅]
- C++程序設(shè)計基礎(chǔ)教程 [主編 劉志寶 朱偉華 謝利民]
- Visual C++ & Android程序設(shè)計綜合實訓(xùn)(第二版) [主編 梁建武]
- 數(shù)據(jù)結(jié)構(gòu)(C語言版)(第三版) [主編 庫波 曹靜]
- 數(shù)據(jù)結(jié)構(gòu)(Java版) [孫琳 張宇]
- Visual C++程序設(shè)計教程(第二版) [梁建武]
- 數(shù)據(jù)結(jié)構(gòu) [許繪香 段明義]
- 數(shù)據(jù)結(jié)構(gòu)(C語言描述) [李素若 陳萬華 游明坤 編著]
- 數(shù)據(jù)結(jié)構(gòu)習(xí)題解答及上機(jī)指導(dǎo) [李素若 琚輝 嚴(yán)永松 編著]
- C++應(yīng)用程序設(shè)計 [劉彥姝 謝景偉]
- C++程序設(shè)計 [陳國志 叢華 單正 編著]
- C++面向?qū)ο蟪绦蛟O(shè)計習(xí)題解答及上機(jī)指導(dǎo) [李素若 杜華兵]
- C++面向?qū)ο蟪绦蛟O(shè)計 [李素若 杜華兵]
- C/C++程序設(shè)計學(xué)習(xí)輔導(dǎo) [李婷 李云峰 編著]
- C/C++程序設(shè)計 [李云峰 李婷 編著]