數據結構答疑解惑與典型題解

如何理解多棧的作用? 如何理解圖的遍歷? 如何理解拓撲排序的作用?

圖書信息

出版社: 北京郵電大學出版社; 第1版 (2010年9月1日)
叢書名: 高等院校“十二五”核心課程輔導叢書
平裝: 278頁
正文語種: 簡體中文
開本: 16
ISBN: 7563522867, 9787563522866
條形碼: 9787563522866
尺寸: 25.4 x 18.4 x 1.4 cm
重量: 440 g

內容簡介

《數據結構(C++版)答疑解惑與典型題解》是為熟悉C++編程的讀者學習數據結構而編寫的教學輔導書,可幫助讀者複習課程的基本內容,並學會用C++使用相應的數據結構實現一定的算法和解決一些實際套用問題,力爭使讀者在學完《數據結構(C++版)答疑解惑與典型題解》之後,在課程的理解和掌握方面達到一個新的高度,《數據結構(C++版)答疑解惑與典型題解》也可供從事本課程教學的教師參考書。
《數據結構(C++版)答疑解惑與典型題解》共分十章,包括數據結構概述、線性表、棧和佇列、串和字元串、數組和廣義表、樹和二義樹、圖、查找、排序,在全書最後給出了一套模擬試題及參考答案。
《數據結構(C++版)答疑解惑與典型題解》每章內容均包括各基本知識點的要點歸納,並精選一些經典數據結構書中的經典例題(包括課程考試試題、主流教材課後難題以及考研真題),給出了解題思路和分析方法,題後提示了解題中應注意的問題。力爭使讀者在儘可能短的時間內,鞏固課程基本概念,加深理解數據結構的基本知識並融會貫通,熟練掌握基本的編程方法並舉一反三,不斷提高讀者的C++編程能力和利用各種數據結構解決實際問題的能力。
《數據結構(C++版)答疑解惑與典型題解》可供學習數據結構課程(C++版)的讀者以及考研讀者和從事課程教學的教師參考。

目錄

第1章 數據結構基本概念
1.1 答疑解惑
1.1.1 為什麼要用數據類型來描述數據結構?
1.1.2 何為抽象數據類型(ADT)?
1.1.3 算法和程式有何區別?
1.1.4 怎樣理解數據的邏輯結構和存儲結構?
1.1.5 怎樣理解數據結構在計算機課程中的核心地位?
1.1.6 如何計算算法的時間複雜度?
1.1.7 如何評價算法的好壞?
1.2 典型題解
題型1 數據結構基礎知識
題型2 時間與空間複雜度的計算
第2章 線性表
2.1 答疑解惑
2.1.1 如何理解線性表數據結構?
2.1.2 線性表的順序存儲結構和鏈式存儲結構的區別是什麼?
2.1.3 帶頭結點的單鍊表和不帶頭結點的單鍊表的區別是什麼?
2.1.4 鍊表的指針修改的次序對結果的影響是什麼?
2.1.5 各種鍊表存儲結構的特點是什麼?
2.1.6 如何利用循環單鍊表實現佇列的操作?
2.1.7 如何套用線性表?
2.1.8 順序表的聲明和基本運算用C++如何描述?
2.2 典型題解
題型1 線性表的基本概念
題型2 線性表的存儲結構
題型3 鍊表的插入和刪除
題型4 線性表元素查找
題型5 遞歸
題型6 歸併
題型7 單鍊表的套用
題型8 其他鍊表及套用
第3章 棧與佇列
3.1 答疑解惑
3.1.1 怎樣理解棧?
3.1.2 棧的順序存儲結構和鏈式存儲結構的區別是什麼?
3.1.3 在進行人棧和出棧時應注意的問題是什麼?
3.1.4 如何理解多棧的作用?
3.1.5 兩個棧如何共享同一存儲空間?
3.1.6 如何套用棧?
3.1.7 怎樣理解佇列?
3.1.8 如何處理循環佇列中的邊界條件?
3.1.9 佇列的順序存儲結構和鏈式存儲結構的區別是什麼?
3.1.10 如何理解雙佇列的作用?
3.1.11 如何套用佇列?
3.2 典型題解
題型1 棧和佇列的基本概念
題型2 棧和佇列的基本操作
題型3 棧和佇列的狀態分析
題型4 遞歸算法和遞歸工作棧
題型5 用棧求表達式的值
題型6 棧和佇列的套用
第4章 串
4.1 答疑解惑
4.1.1 怎樣理解串?
4.1.2 串的順序存儲結構和鏈式存儲結構的優缺點是什麼?
4.1.3 串的基本操作
4.1.4 怎樣用共享堆求子串?
4.1.5 如何理解kmp算法?
4.1.6 串有何套用?
4.2 典型題解
題型1 串的性質和存儲
題型2 串的基本運算
題型3 串的模式匹配
第5章 數組與廣義表
5.1 答疑解惑
5.1.1 數組存儲地址如何確定?
5.1.2 對稱矩陣如何壓縮存儲?
5.1.3 對稱矩陣的地址計算公式是什麼?
5.1.4 三角矩陣如何壓縮存儲?
5.1.5 對角矩陣的概念是什麼?
5.1.6 稀疏矩陣的三元組存儲結構如何理解?
5.1.7 如何靈活運用廣義表的表頭和表尾操作?
5.1.8 如何由廣義表表示得到其動態存儲表示?
5.1.9 如何由廣義表的動態存儲表示求廣義表表示?
5.1.10 廣義表如何運算?
5.1.11 如何理解廣義表表示和二叉樹的內在聯繫?
5.2 典型題解
題型1 多維數組
題型2 特殊矩陣
題型3 稀疏矩陣
題型4 廣義表
第6章 樹與二叉樹
6.1 答疑解惑
6.1.1 樹的遞歸定義如何理解?
6.1.2 如何理解樹的性質和基本概念?
6.1.3 如何理解二叉樹的性質及其推廣?
6.1.4 如何理解二叉樹遍歷的非遞歸?
6.1.5 如何理解線索二叉樹實現二叉樹的非遞歸?
6.1.6 如何理解二叉樹中序線索化的算法?
6.1.7 二叉樹與樹或森林轉換的目的是什麼?
6.1.8 建立二又樹有哪些方法?
6.1.9 森林的兩種遍歷都是哪些?
6.1.10 如何理解廣義表表示和二叉樹的內在聯繫?
6.1.11 哈夫曼樹的建立和哈夫曼編碼的構造?
6.1.12 如何用二又樹表示表達式?
6.2 典型題解
題型1 樹的性質
題型2 二叉樹的性質
題型3 條件運算
題型4 二叉樹的遍歷
題型5 根據遍歷結果還原樹
題型6 線索二叉樹
題型7 樹與森林
題型8 樹與森林
第7章 圖
7.1 答疑解惑
7.1.1 如何理解圖的定義?
7.1.2 如何理解圖的各種存儲結構?
7.1.3 如何理解圖的遍歷?
7.1.4 如何理解圖遍歷的非遞歸算法?
7.1.5 如何理解圖的最小生成樹?
7.1.6 如何用圖的框架及其遍歷方法解決背包問題?
7.1.7 如何理解拓撲排序的作用?
7.1.8 如何理解Dikstra算法和F1oy算法的優缺點?
7.1.9 如何理解關鍵路徑?
7.1.10 圖的套用有哪些?
7.2 典型題解
題型1 圖的基本概念
題型2 圖的存儲結構
題型3 圖的遍歷
題型4 圖的生成樹
題型5 圖的最短路
題型6 圖的拓撲排序
題型7 圖的套用
第8章 查找
8.1 答疑解惑
8.1.1 如何理解查找的基本概念?
8.1.2 如何理解順序查找中的監視哨作用?
8.1.3 如何理解平均查找長度?
8.1.4 折半查找的前提條件及其優缺點有哪些?
8.1.5 什麼情況下使用分塊查找
8.1.6 二叉排序樹的特點有哪些?
8.1.7 如何調整平衡二叉樹?
8.1.8 深刻理解B一樹的定義及其動態調整
8.1.9 如何理解散列表的性質?
8.1.10 如何理解散列表的衝突?
8.1.11 常用的散列函式有哪些?
8.2 典型題解
題型1 順序查找
題型2 二分查找
題型3 一維數組元素的移動
題型4 一維數組的排序
題型5 平衡二叉樹
題型6 B樹
題型7 哈希表
第9章 排序
9.1 答疑解惑
9.1.1 如何理解排序算法的穩定性?
9.1.2 內部排序和外部排序有什麼區別?
9.1.3 如何將順序存儲結構上的排序算法移植到鍊表上?
9.1.4 希爾排序為何比一般的插入排序要高效?
9.1.5 如何理解堆排序?
9.1.6 如何在r進制下運用基數排序?
9.1.7 如何合理地採用適當的內部排序方法?
9.1.8 如何在^路歸併方法中使用敗者樹?
9.2 典型題解
題型1 排序基本概念
題型2 插人排序
題型3 冒泡排序
題型4 選擇排序
題型5 歸併排序
題型6 基數排序
題型7 各種內部排序的比較
題型8 外部排序
第10章 課程測試與考研真題
10.1 課程測試
10.2 考研真題
10.3 課程測試解析
10.4 考研真題解析
參考文獻

熱門詞條

聯絡我們