出版時(shí)間:2009-8 出版社:廈門大學(xué)出版社 作者:楊升 頁數(shù):234
內(nèi)容概要
“數(shù)據(jù)結(jié)構(gòu)”是計(jì)算機(jī)學(xué)科的專業(yè)核心基礎(chǔ)課程,是一門集理論性和實(shí)踐性于一體的課程。 “數(shù)據(jù)結(jié)構(gòu)”的教學(xué)目的是:首先,讓學(xué)生理解什么是“數(shù)據(jù)結(jié)構(gòu)+算法一程序”,即讓學(xué)生懂得設(shè)計(jì)程序求解問題時(shí),不僅僅要實(shí)現(xiàn)一個(gè)有效、合理的算法,還要求設(shè)計(jì)出與之結(jié)合的恰當(dāng)?shù)臄?shù)據(jù)結(jié)構(gòu);其次,培養(yǎng)學(xué)生的抽象能力,即如何為應(yīng)用中所涉及的數(shù)據(jù)選擇適當(dāng)?shù)倪壿嫿Y(jié)構(gòu)、存儲(chǔ)結(jié)構(gòu)及相應(yīng)算法;最后,培養(yǎng)學(xué)生的實(shí)踐編程能力,使之編寫的程序符合軟件工程規(guī)范。總之,通過本門課程的學(xué)習(xí),為學(xué)生學(xué)習(xí)后續(xù)課程和將來進(jìn)行軟件開發(fā)等打下堅(jiān)實(shí)的基礎(chǔ)。 本教材具有以下特點(diǎn): ·每章開頭的“知識(shí)點(diǎn)”和“學(xué)習(xí)要求”對(duì)本章的學(xué)習(xí)起到了“提綱挈領(lǐng)”的作用。 ·全書對(duì)于理論知識(shí)點(diǎn)的講解,循序漸進(jìn),思路清晰;針對(duì)每一個(gè)知識(shí)點(diǎn),都配有相應(yīng)的實(shí)例說明。 ·所有算法(數(shù)據(jù)操作)都用C語言函數(shù)實(shí)現(xiàn),幾乎不用做任何修改就可被其他函數(shù)調(diào)用。為方便初學(xué)者實(shí)踐驗(yàn)證“數(shù)據(jù)結(jié)構(gòu)”的算法,前面幾章還給出了算法實(shí)現(xiàn)的完整C源程序。 ·基本上每章都配有實(shí)驗(yàn)及實(shí)驗(yàn)指導(dǎo)和習(xí)題,以檢驗(yàn)每章的學(xué)習(xí)效果。 在計(jì)算機(jī)科學(xué)與技術(shù)領(lǐng)域,數(shù)據(jù)結(jié)構(gòu)作為一門學(xué)科,主要研究數(shù)據(jù)的各種邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu),以及對(duì)數(shù)據(jù)的各種操作。所以,“數(shù)據(jù)結(jié)構(gòu)”教材主要包括三個(gè)方面的內(nèi)容:數(shù)據(jù)的邏輯結(jié)構(gòu)、數(shù)據(jù)的物理結(jié)構(gòu)、對(duì)數(shù)據(jù)的操作(也稱為算法,其設(shè)計(jì)取決于數(shù)據(jù)的邏輯結(jié)構(gòu),而實(shí)現(xiàn)取決于數(shù)據(jù)的物理存儲(chǔ)結(jié)構(gòu))。 本書共分9章:第1章概述了數(shù)據(jù)結(jié)構(gòu)的一些基本概念和術(shù)語,以及算法和算法分析的概念;第2章介紹線性表的邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu)及運(yùn)算實(shí)現(xiàn);第3章介紹特殊線性表實(shí)例——棧和隊(duì)列的定義及其存儲(chǔ)結(jié)構(gòu),以及應(yīng)用實(shí)例;第4章介紹串的基本概念及基本操作應(yīng)用;第5章介紹數(shù)組和廣義表的定義及存儲(chǔ)結(jié)構(gòu);第6章主要介紹樹和二叉樹的定義及基本術(shù)語,詳細(xì)討論了二叉樹的遍歷運(yùn)算及其應(yīng)用;第7章介紹圖的基本概念和圖的幾種存儲(chǔ)結(jié)構(gòu),特別介紹了圖的遍歷、生成樹、拓?fù)渑判颉㈥P(guān)鍵路徑、最短路徑等內(nèi)容;第8章介紹了查找,包括靜態(tài)查找表、動(dòng)態(tài)查找表和哈希表;第9章主要討論了各種內(nèi)部排序算法及其性能分析。
書籍目錄
前言第1章 概論 1.1 什么是數(shù)據(jù)結(jié)構(gòu) 1.1.1 基本概念和術(shù)語 1.1.2 數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu) 1.1.3 數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)類型 1.2 為什么要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu) 1.2.1 數(shù)據(jù)結(jié)構(gòu)的重要性 1.2.2 數(shù)據(jù)結(jié)構(gòu)的一個(gè)應(yīng)用例子 1.3 算法和算法分析 1.3.1 算法的特點(diǎn) 1.3.2 算法的度量 本章小結(jié) 習(xí)題第2章 線性表 2.1 線性表的定義及基本操作 2.1.1 線性表的定義 2.1.2 線性表的基本操作 2.2 線性表的順序存儲(chǔ) 2.2.1 順序表的定義 2.2.2 順序表的基本操作 2.3 線性表的鏈?zhǔn)酱鎯?chǔ) 2.3.1 單鏈表 2.3.2 雙向鏈表 2.3.3 循環(huán)鏈表 2.3.4 靜態(tài)鏈表 2.4 線性表的存儲(chǔ)方式小結(jié) 2.5 線性表的應(yīng)用 2.5.1 順序表的應(yīng)用 2.5.2 鏈表的應(yīng)用 本章小結(jié) 實(shí)驗(yàn) 習(xí)題第3章 棧和隊(duì)列 3.1 棧 3.1.1 棧的定義 3.1.2 棧的基本操作 3.1.3 棧的順序存儲(chǔ) 3.1.4 棧的鏈?zhǔn)酱鎯?chǔ) 3.2 隊(duì)列 3.2.1 隊(duì)列的定義 3.2.2 隊(duì)列的基本操作 3.2.3 隊(duì)列的順序存儲(chǔ) 3.2.4 隊(duì)列的鏈?zhǔn)酱鎯?chǔ) 3.3 棧和隊(duì)列的應(yīng)用 3.3.1 棧的應(yīng)用 3.3.2 隊(duì)列的應(yīng)用 本章小結(jié) 實(shí)驗(yàn) 習(xí)題第4章 串 4.1 串的基本概念及基本運(yùn)算 4.1.1 串的基本概念 4.1.2 串的基本操作 4.2 串的存儲(chǔ)結(jié)構(gòu) 4.2.1 串的順序存儲(chǔ)結(jié)構(gòu) 4.2.2 串的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu) 4.3 串的模式匹配運(yùn)算 4.3.1 基本的模式匹配算法 4.3.2 模式匹配的改進(jìn)算法——KMP算法 本章小結(jié) 實(shí)驗(yàn) 習(xí)題第5章 數(shù)組和廣義表 5.1 數(shù)組的存儲(chǔ)結(jié)構(gòu)與尋址 5.1.1 一維數(shù)組的存儲(chǔ)結(jié)構(gòu) 5.1.2 二維數(shù)組的存儲(chǔ)結(jié)構(gòu) 5.2 矩陣的壓縮存儲(chǔ) ……第6章 樹和二叉樹第7章 圖第8章 查找第9章 排序各章習(xí)題參考答案參考文獻(xiàn)
圖書封面
評(píng)論、評(píng)分、閱讀與下載
數(shù)據(jù)結(jié)構(gòu) PDF格式下載