全國高職高專計算機系列精品教材:數(shù)據結構導論(配學習指導書)
定 價:39.8 元
- 作者:蔡厚新 ,肖守柏 著
- 出版時間:2010/8/1
- ISBN:9787300124308
- 出 版 社:中國人民大學出版社
- 中圖法分類:TP311.12
- 頁碼:192
- 紙張:膠版紙
- 版次:1
- 開本:16開
《數(shù)據結構導論》不僅是計算機專業(yè)重要的專業(yè)基礎課,也是從事計算機軟件開發(fā)必備的專業(yè)知識。全書共十二章分為四部分,依次介紹了數(shù)據結構的基本概念,線性表、棧、串、隊列和數(shù)組、樹結構和圖結構,以及查找和排序等基本運算。每章節(jié)從實例入手,系統(tǒng)地介紹了各種常用的數(shù)據結構,注重實用性,由淺入深,圖文并茂,易教易學!稊(shù)據結構導論》內容豐富,概念講解清楚,敘述嚴謹流暢,邏輯性強。每章均配有小結和思考與練習!稊(shù)據結構導論》可作為高等院校高職高專計算機專業(yè)教材和相關培訓教材,也可作為從事計算機軟件工作人員的參考用書。
計算機科學技術以驚人的速度迅猛發(fā)展,它的應用范圍已滲入到社會和生活的各個領域。相應地,數(shù)據處理的對象也從簡單的數(shù)值發(fā)展到字符、表格和圖形等帶有結構的數(shù)據。在這里要解決的關鍵問題是:針對每一種新的應用領域的處理對象,如何選擇合適的數(shù)據表示(結構),如何有效地組織數(shù)據、處理數(shù)據。數(shù)據結構就是研究數(shù)據以及數(shù)據之間關系的一門學科,主要研究數(shù)據之間的邏輯結構及其基本操作在計算機中的表示和實現(xiàn)。數(shù)據結構課程不僅是計算機專業(yè)重要的專業(yè)基礎課,也是從事計算機軟件開發(fā)所必備的專業(yè)知識。本教材主要面向高職高專院;驊眯员究频挠嬎銠C類專業(yè)的學生,培養(yǎng)技術應用性人才。內容的構造力求體現(xiàn)“以應用為主體”,強調理論知識的理解和運用,實現(xiàn)教學以實踐體系為主及以技術應用能力培養(yǎng)為主的培養(yǎng)目標。
案例教學是計算機語言教學最有效的方法之一,好的案例對學生理解知識、掌握如何應用知識都十分重要。本書圍繞教學內容組織案例,對學生的知識和能力訓練具有很強的針對性。全書共十二章,大體上可看成為由四個部分組成,基本的線性結構及有關的典型應用是第一部分(第二章到第六章);具有廣泛應用價值的樹形結構在第七、八章講述,這兩部分占據了本書的主要篇幅;第九章及第十章介紹復雜數(shù)據結構,如圖、稀疏矩陣及廣義表等;有關外存儲器中的數(shù)據結構和文件組織放在第四部分。
第1章 緒論
1.1 數(shù)據結構
1.2 實例:編寫HELLO,WORLD!程序
1.3 實例:數(shù)組元素排序
第2章 線性表
2.1 實例:“銀行排隊”順序存儲
2.2 實例:“學生健康登記表”鏈式存儲
2.3 其他鏈表
第3章 棧和隊列
3.1 實例:回文
3.2 實例:楊輝三角
第4章 串
4.1 串的基本概念
4.2 實例:文本加密
第5章 內部排序
5.1 排序的基本概念
5.2 實例:學生成績插入排序
5.3 實例:學生成績交換排序
5.4 實例:學生成績選擇排序
5.5 其他排序
第6章 查找
6.1 實例:學生成績不及格的查找
6.2 實例:學生成績及格的查找
6.3 實例:學生成績優(yōu)秀的查找
第7章 二叉樹
7.1 實例:高;@球比賽
7.2 實例:高;@球總決賽
7.3 實例:學生成績及格的查找
7.4 實例:報文
第8章 樹
8.1 實例:高校教師講課比賽(一)
8.2 實例:高校教師講課比賽(二)
第9章 圖
9.1 實例:城際鐵路
9.2 實例:游園路線
第10章 數(shù)組、矩陣和廣義表
10.1 實例:學生出勤的天數(shù)
10.2 實例:學生出勤的放假天數(shù)
10.3 實例:學生出勤的請假天數(shù)
第11章文件
11.1 文件的基本概念
11.2 順序文件
11.3 散列文件
第12章 外部排序
12.1 外部排序的基本思想
12.2 外部排序的方法
參考文獻
附:《數(shù)據結構導論學習指導》
對于一個問題可以有多種算法,如將在第5章介紹的排序有多達8種算法。那么如何來衡量哪種算法最有效?或者優(yōu)于目前已知的算法呢?人們一般從兩個方面來衡量。一個是時間效率,即算法處理數(shù)據時所花費的時間,用時間復雜度來表示;一個是空間效率,即算法所需求的存儲量的大小,用空間復雜度來表示。但二者往往有沖突,不能同時兼顧,一般取時間效率,時間效率被認為更重要一些。
1.時間復雜度分析
對于解決同一個問題的算法,執(zhí)行時間短的顯然比執(zhí)行時間長的時間效率高,即執(zhí)行時間短的算法比執(zhí)行時間長的算法時間復雜度要低。那么算法執(zhí)行時間的長短如何度量呢?一種方法是編制一個程序實現(xiàn)這個算法,然后輸入不同的數(shù)據運行這個程序,測定該程序運行的時間被稱為事后統(tǒng)計法。這種方法的缺陷非常明顯:一是必須編制程序和運行程序,非常耗費時間,也比較麻煩;二是受到的約束條件比較多,比如運行程序的計算機軟硬件條件、使用的編程語言等,這些有時會掩蓋算法本身的優(yōu)劣。
另一種方法是分析算法運行的時間,稱為事前分析法。它不上機運行依算法編制的程序,而是分析影響算法執(zhí)行時間的各種因素,從而估算出算法執(zhí)行的時間。其中,一個最重要的因素是輸入算法的數(shù)據量(稱為問題規(guī)模)。例如,一個查找單詞的算法,在100個單詞中查找某個單詞與在工。萬個單詞中查找某個單詞所花費的時間肯定是不同的.因此,一個算法的執(zhí)行時間T可被表示為問題規(guī)模n的一個函數(shù)T(n)。
除了問題規(guī)模以外,實現(xiàn)算法的程序設計語言、源程序編譯后產生的機器代碼的質量、機器執(zhí)行指令的速度等都會影響算法的執(zhí)行時間。因此,不可能將T(n)表達為算法實際執(zhí)行的時間。一般用算法中語句被執(zhí)行的次數(shù)來表示算法的時間效率(算法的時間復雜度)。可用下面的例子來說明。