首 頁
手機(jī)版

大話數(shù)據(jù)結(jié)構(gòu)溢彩加強(qiáng)版pdf 清晰掃描完整版

《大話數(shù)據(jù)結(jié)構(gòu)》是一本非常適合自學(xué)的數(shù)據(jù)結(jié)構(gòu)書籍,由程杰作者精心編寫,與一般的教材不同,這本書主要根據(jù)教育部關(guān)于計(jì)算機(jī)專業(yè)數(shù)據(jù)結(jié)構(gòu)課程大綱的要求進(jìn)行了略微的增減,以更好地適應(yīng)讀者的需求。

在書中,作者以一個(gè)計(jì)算機(jī)教師教學(xué)為場(chǎng)景,生動(dòng)地講解了數(shù)據(jù)結(jié)構(gòu)和相關(guān)算法的知識(shí),通過這種有趣的方式,讀者可以更加輕松地理解和掌握這些抽象的概念,同時(shí),作者大量引用了各種各樣的生活知識(shí)來類比數(shù)據(jù)結(jié)構(gòu)和算法,使得學(xué)習(xí)過程更加生動(dòng)有趣。為了更好地幫助讀者理解抽象的內(nèi)容,作者充分運(yùn)用圖形語言來展示數(shù)據(jù)結(jié)構(gòu)和算法的關(guān)系,通過對(duì)經(jīng)典算法的逐行分析和多算法比較,讀者可以更深入地了解各種數(shù)據(jù)結(jié)構(gòu)和算法的特點(diǎn)和應(yīng)用場(chǎng)景。

值得一提的是,小編給大家?guī)淼氖?strong>大話數(shù)據(jù)結(jié)構(gòu)溢彩加強(qiáng)版pdf,它以生動(dòng)有趣的方式呈現(xiàn)內(nèi)容,結(jié)合生活常識(shí)進(jìn)行類比,并通過圖形語言展示抽象概念,對(duì)于想要深入學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法的讀者來說,這本書將是一個(gè)絕佳的選擇,歡迎有需要的用戶下載使用。

大話數(shù)據(jù)結(jié)構(gòu)溢彩加強(qiáng)版pdf

基本介紹

大話數(shù)據(jù)結(jié)構(gòu)全書主要包括:數(shù)據(jù)結(jié)構(gòu)介紹,算法推導(dǎo)大O階的方法,線性表結(jié)構(gòu)的介紹,順序結(jié)構(gòu)與鏈?zhǔn)浇Y(jié)構(gòu)差異,棧與隊(duì)列的應(yīng)用,串的樸素模式匹配、KMP模式匹配算法,樹結(jié)構(gòu)的介紹,二叉樹前中后序遍歷,線索二叉樹,赫夫曼樹及應(yīng)用,圖結(jié)構(gòu)的介紹,圖的深度、廣度遍歷,最小生成樹兩種算法,最短路徑兩種算法,拓?fù)渑判蚺c關(guān)鍵路徑算法,查找應(yīng)用的相關(guān)介紹,折半查找、插值查找、斐波那契查找等靜態(tài)查找,稠密索引、分塊索引、倒排索引等索引技術(shù),二叉排序樹、平衡二叉樹等動(dòng)態(tài)查找,B樹、B+樹技術(shù),散列表技術(shù),排序應(yīng)用的相關(guān)介紹,冒泡、選擇、插入等簡(jiǎn)單排序,希爾、堆、歸并、快速等改進(jìn)排序,各位排序算法的對(duì)比等。 

本書適合學(xué)過一門編程語言的各類讀者,包括在讀的大中專計(jì)算機(jī)專業(yè)學(xué)生、想轉(zhuǎn)行做開發(fā)的非專業(yè)人員、欲考計(jì)算機(jī)研究生的應(yīng)屆或在職人員,以及工作后需要補(bǔ)學(xué)或溫習(xí)數(shù)據(jù)結(jié)構(gòu)和算法的程序員等。

作者簡(jiǎn)介

程杰,一個(gè)被讀者譽(yù)為很適合寫IT技術(shù)書的家伙?!洞笤捲O(shè)計(jì)模式》作者。此書07年末出版至今已經(jīng)簡(jiǎn)體版印刷9次、繁體版印刷6次,取得了較好的成績(jī),開創(chuàng)了一種適合國人閱讀的趣味講解IT知識(shí)的風(fēng)格模式。其本人參與過政府、證券、游戲、交通等多種行業(yè)的軟件開發(fā)及項(xiàng)目管理工作,也曾做過軟件培訓(xùn)的教師。因曾有過兩年半高中數(shù)學(xué)教學(xué)的獨(dú)特經(jīng)歷,使得其書作當(dāng)中處處以初學(xué)者視角考慮和分析問題,他成為了當(dāng)前很受歡迎的IT技術(shù)圖書作者之一。

大話數(shù)據(jù)結(jié)構(gòu)目錄

第1章 數(shù)據(jù)結(jié)構(gòu)緒論

1.1 開場(chǎng)白

1.2 你數(shù)據(jù)結(jié)構(gòu)怎么學(xué)的?

1.3 數(shù)據(jù)結(jié)構(gòu)起源

1.4 基本概念和術(shù)語

1.4.1 數(shù)據(jù)

1.4.2 數(shù)據(jù)元素

1.4.3 數(shù)據(jù)項(xiàng)

1.4.4 數(shù)據(jù)對(duì)象

1.4.5 數(shù)據(jù)結(jié)構(gòu)

1.5 邏輯結(jié)構(gòu)與物理結(jié)構(gòu)

1.5.1 邏輯結(jié)構(gòu)

1.5.2 物理結(jié)構(gòu)

1.6 抽象數(shù)據(jù)類型

1.6.1 數(shù)據(jù)類型

1.6.2 抽象數(shù)據(jù)類型

1.7 總結(jié)回顧

1.8 結(jié)尾語

第2章 算法

2.1 開場(chǎng)白

2.2 數(shù)據(jù)結(jié)構(gòu)與算法關(guān)系

2.3 兩種算法的比較

2.4 算法定義

2.5 算法的特性

2.5.1 輸入輸出

2.5.2 有窮性

2.5.3 確定性

2.5.4 可行性

2.6 算法設(shè)計(jì)的要求

2.6.1 正確性

2.6.2 可讀性

2.6.3 健壯性

2.6.4 時(shí)間效率高和存儲(chǔ)量低

2.7 算法效率的度量方法

2.7.1 事后統(tǒng)計(jì)方法

2.7.2 事前分析估算方法

2.8 函數(shù)的漸近增長(zhǎng)

2.9 算法時(shí)間復(fù)雜度

2.9.1 算法時(shí)間復(fù)雜度定義

2.9.2 推導(dǎo)大O階方法

2.9.3 常數(shù)階

2.9.4 線性階

2.9.5 對(duì)數(shù)階

2.9.6 平方階

2.10 常見的時(shí)間復(fù)雜度

2.11 最壞情況與平均情況

2.12 算法空間復(fù)雜度

2.13 總結(jié)回顧

2.14 結(jié)尾語

第3章 線性表

3.1 開場(chǎng)白

3.2 線性表的定義

3.3 線性表的抽象數(shù)據(jù)類型

3.4 線性表的順序存儲(chǔ)結(jié)構(gòu)

3.4.1 順序存儲(chǔ)定義

3.4.2 順序存儲(chǔ)方式

3.4.3 數(shù)據(jù)長(zhǎng)度與線性表長(zhǎng)度區(qū)別

3.4.4 地址計(jì)算方法

3.5 順序存儲(chǔ)結(jié)構(gòu)的插入與刪除

3.5.1 獲得元素操作

3.5.2 插入操作

3.5.3 刪除操作

3.5.4 線性表順序存儲(chǔ)結(jié)構(gòu)的優(yōu)缺點(diǎn)

3.6 線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)

3.6.1 順序存儲(chǔ)結(jié)構(gòu)不足的解決辦法

3.6.2 線性表鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)定義

3.6.3 頭指針與頭結(jié)點(diǎn)的異同

3.6.4 線性表鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)代碼描述

3.7 單鏈表的讀取

3.8 單鏈表的插入與刪除

3.8.1 單鏈表的插入

3.8.2 單鏈表的刪除

3.9 單鏈表的整表創(chuàng)建

3.10 單鏈表的整表刪除

3.11 單鏈表結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)優(yōu)缺點(diǎn)

3.12 靜態(tài)鏈表

3.12.1 靜態(tài)鏈表的插入操作

3.12.2 靜態(tài)鏈表的刪除操作

3.12.3 靜態(tài)鏈表優(yōu)缺點(diǎn)

3.13 循環(huán)鏈表

3.14 雙向鏈表

3.15 總結(jié)回顧

3.16 結(jié)尾語

第4章 棧與隊(duì)列

4.1 開場(chǎng)白

4.2 棧的定義

4.2.1 棧的定義

4.2.2 進(jìn)棧出棧變化形式

4.3 棧的抽象數(shù)據(jù)類型

4.4 棧的順序存儲(chǔ)結(jié)構(gòu)及實(shí)現(xiàn)

4.4.1 棧的順序存儲(chǔ)結(jié)構(gòu)

4.4.2 棧的順序存儲(chǔ)結(jié)構(gòu)進(jìn)棧操作

4.4.3 棧的順序存儲(chǔ)結(jié)構(gòu)出棧操作

4.5 兩棧共享空間

4.6 棧的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)及實(shí)現(xiàn)

4.6.1 棧的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)

4.6.2 棧的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)進(jìn)棧操作

4.6.3 棧的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)出棧操作

4.7 棧的作用

4.8 棧的應(yīng)用--遞歸

4.8.1 斐波那契數(shù)列實(shí)現(xiàn)

4.8.2 遞歸定義

4.9 棧的應(yīng)用--四則運(yùn)算表達(dá)式求值

4.9.1 后綴(逆波蘭)表示法定義

4.9.2 后綴表達(dá)式計(jì)算結(jié)果

4.9.3 中綴表達(dá)式轉(zhuǎn)后綴表達(dá)式

4.10 隊(duì)列的定義

4.11 隊(duì)列的抽象數(shù)據(jù)類型

4.12 循環(huán)隊(duì)列

4.12.1 隊(duì)列順序存儲(chǔ)的不足

4.12.2 循環(huán)隊(duì)列定義

4.13 隊(duì)列的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)及實(shí)現(xiàn)

4.13.1 隊(duì)列鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)入隊(duì)操作

4.13.2 隊(duì)列鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)出隊(duì)操作

4.14 總結(jié)回顧

4.15 結(jié)尾語

第5章 串

5.1開場(chǎng)白

05.2 串的定義

5.3 串的比較

5.4 串的抽象數(shù)據(jù)類型

5.5 串的存儲(chǔ)結(jié)構(gòu)

5.5.1 串的順序存儲(chǔ)結(jié)構(gòu)

5.5.2 串的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)

5.6 樸素的模式匹配算法

5.7 KMP模式匹配算法

5.7.1 KMP模式匹配算法原理

5.7.2 next數(shù)組值推導(dǎo)

5.7.3 KMP模式匹配算法實(shí)現(xiàn)

5.7.4 KMP模式匹配算法改進(jìn)

5.7.5 nextval數(shù)組值推導(dǎo)

5.8 總結(jié)回顧

5.9 結(jié)尾語

第6章 樹

6.1 開場(chǎng)白

6.2 樹的定義

6.2.1 結(jié)點(diǎn)分類

6.2.2 結(jié)點(diǎn)間關(guān)系

6.2.3 樹的其他相關(guān)概念

6.3 樹的抽象數(shù)據(jù)類型

6.4 樹的存儲(chǔ)結(jié)構(gòu)

6.4.1 雙親表示法

6.4.2 孩子表示法

6.4.3 孩子兄弟表示法

6.5 二叉樹的定義

6.5.1 二叉樹特點(diǎn)

6.5.2 特殊二叉樹

6.6 二叉樹的性質(zhì)

6.6.1 二叉樹性質(zhì)1

6.6.2 二叉樹性質(zhì)2

6.6.3 二叉樹性質(zhì)3

6.6.4 二叉樹性質(zhì)4

6.6.5 二叉樹性質(zhì)5

6.7 二叉樹的存儲(chǔ)結(jié)構(gòu)

6.7.1 二叉樹順序存儲(chǔ)結(jié)構(gòu)

6.7.2 二叉鏈表

6.8 遍歷二叉樹

6.8.1 二叉樹遍歷原理

6.8.2 二叉樹遍歷方法

6.8.3 前序遍歷算法

6.8.4 中序遍歷算法

6.8.5 后序遍歷算法

6.8.6 推導(dǎo)遍歷結(jié)果

6.9 二叉樹的建立

6.10 線索二叉樹

6.10.1 線索二叉樹原理

6.10.2 線索二叉樹結(jié)構(gòu)實(shí)現(xiàn)

6.11 樹、森林與二叉樹的轉(zhuǎn)換

6.11.1 樹轉(zhuǎn)換為二叉樹

6.11.2 森林轉(zhuǎn)換為二叉樹

6.11.3 二叉樹轉(zhuǎn)換為樹

6.11.4 二叉樹轉(zhuǎn)換為森林

6.11.5 樹與森林的遍歷

6.12 赫夫曼樹及其應(yīng)用

6.12.1 赫夫曼樹

6.12.2 赫夫曼樹定義與原理

6.12.3 赫夫曼編碼

6.13 總結(jié)回顧

6.14 結(jié)尾語

第7章 圖

7.1 開場(chǎng)白

7.2 圖的定義

7.2.1 各種圖定義

7.2.2 圖的頂點(diǎn)與邊間關(guān)系

7.2.3 連通圖相關(guān)術(shù)語

7.2.4 圖的定義與術(shù)語總結(jié)

7.3 圖的抽象數(shù)據(jù)類型

7.4 圖的存儲(chǔ)結(jié)構(gòu)

7.4.1 鄰接矩陣

7.4.2 鄰接表

7.4.3 十字鏈表

7.4.4 鄰接多重表

7.4.5 邊集數(shù)組

7.5 圖的遍歷

7.5.1 深度優(yōu)先遍歷

7.5.2 廣度優(yōu)先遍歷

7.6 最小生成樹

7.6.1 普里姆(Prim)算法

7.6.2 克魯斯卡爾(Kruskal)算法

7.7 最短路徑

7.7.1 迪杰斯特拉(Dijkstra)算法

7.7.2 弗洛伊德(Floyd)算法

7.8 拓?fù)渑判?

7.8.1 拓?fù)渑判蚪榻B

7.8.2 拓?fù)渑判蛩惴?

7.9 關(guān)鍵路徑

7.9.1 關(guān)鍵路徑算法原理

7.9.2 關(guān)鍵路徑算法

7.10 總結(jié)回顧

7.11 結(jié)尾語

第8章 查找

8.1 開場(chǎng)白

8.2 查找概論

8.3 順序表查找

8.3.1 順序表查找算法

8.3.2 順序表查找優(yōu)化

8.4 有序表查找

8.4.1 折半查找

8.4.2 插值查找

8.4.3 斐波那契查找

8.5 線性索引查找

8.5.1 稠密索引

8.5.2 分塊索引

8.5.3 倒排索引

8.6 二叉排序樹

8.6.1 二叉排序樹查找操作

8.6.2 二叉排序樹插入操作

8.6.3 二叉排序樹刪除操作

8.6.4 二叉排序樹總結(jié)

8.7 平衡二叉樹(AVL樹)

8.7.1 平衡二叉樹實(shí)現(xiàn)原理

8.7.2 平衡二叉樹實(shí)現(xiàn)算法

8.8 多路查找樹(B樹)

8.8.1 2-3樹

8.8.2 2-3-4樹

8.8.3 B樹

8.8.4 B+樹

8.9 散列表查找(哈希表)概述

8.9.1 散列表查找定義

8.9.2 散列表查找步驟

8.10 散列函數(shù)的構(gòu)造方法

8.10.1 直接定址法

8.10.2 數(shù)字分析法

8.10.3 平方取中法

8.10.4 折疊法

8.10.5 除留余數(shù)法

8.10.6 隨機(jī)數(shù)法

8.11 處理散列沖突的方法

8.11.1 開放定址法

8.11.2 再散列函數(shù)法

8.11.3 鏈地址法

8.11.4 公共溢出區(qū)法

8.12 散列表查找實(shí)現(xiàn)

8.12.1 散列表查找算法實(shí)現(xiàn)

8.12.2 散列表查找性能分析

8.13 總結(jié)回顧

8.14 結(jié)尾語

第9章 排序

9.1 開場(chǎng)白

9.2 排序的基本概念與分類

9.2.1 排序的穩(wěn)定性

9.2.2 內(nèi)排序與外排序

9.2.3 排序用到的結(jié)構(gòu)與函數(shù)

9.3 冒泡排序

9.3.1 最簡(jiǎn)單排序?qū)崿F(xiàn)

9.3.2 冒泡排序算法

9.3.3 冒泡排序優(yōu)化

9.3.4 冒泡排序復(fù)雜度分析

9.4 簡(jiǎn)單選擇排序

9.4.1 簡(jiǎn)單選擇排序算法

9.4.2 簡(jiǎn)單選擇排序復(fù)雜度分析

9.5 直接插入排序

9.5.1 直接插入排序算法

9.5.2 直接插入排序復(fù)雜度分析

9.6 希爾排序

9.6.1 希爾排序原理

9.6.2 希爾排序算法

9.6.3 希爾排序復(fù)雜度分析

9.7 堆 排 序

9.7.1 堆排序算法

9.7.2 堆排序復(fù)雜度分析

9.8 歸并排序

9.8.1 歸并排序算法

9.8.2 歸并排序復(fù)雜度分析

9.8.3 非遞歸實(shí)現(xiàn)歸并排序

9.9 快速排序

9.9.1 快速排序算法

9.9.2 快速排序復(fù)雜度分析

9.9.3 快速排序優(yōu)化

1.優(yōu)化選取樞軸

2.優(yōu)化不必要的交換

3.優(yōu)化小數(shù)組時(shí)的排序方案

4.優(yōu)化遞歸操作

9.10 總結(jié)回顧

9.11 結(jié)尾語

附錄 參考文獻(xiàn)

收起介紹展開介紹
  • 下載地址
大話數(shù)據(jù)結(jié)構(gòu)溢彩加強(qiáng)版pdf 清晰掃描完整版

有問題? 點(diǎn)此報(bào)錯(cuò)

發(fā)表評(píng)論

0條評(píng)論

熱門推薦