25549,24518

精讀資料結構、演算法(C/C++)

5分,共1人評分。

精讀資料結構、演算法(C/C++)

您的評分:


出版日期:2013/10/02
出版:宏利 / 宏利出版社
作者:陳同利
語言:繁體中文(台灣)
頁數:823
產品類型:電子書
檔案格式:PDF(適合平板)

零售

零售
)檢舉
免費試閱
嵌入閱讀器至您的網頁

內容簡介

為了支持『環保愛地球,減少樹木的砍伐』,本書只有出版電子書沒有出版紙本書。本書為拙著精研資料結構(C/C++)的延伸精編版,是國內目前內容最豐沛(共823頁),探討最深入,且具有獨創性的資料結構與演算法類書。專提供給在軟體設計方面欲更加精進者。作者在國外碩士、博士班進修的這段期間,長期觀察到AIT 電腦科學研究所中的印度學生,研習資料結構時,肯多方面地去參考歐美各國學者所發表的文獻及著作,難怪美國矽谷的軟體設計工程師中有很多是印度人,印度有些高中也開設資料結構課程,這也是印度的軟體工業非常發達的原因。
作者花非常多的時間,搜集並參考歐美各國學者所發表的文獻,精心編著成此電子書,主要目的是希望讀者事半功倍,閱讀完相關的章節以後,即可以馬上嘗試去設計、除錯與改良程式。本書中包括解決各種疑難雜症的演算法,並以範例程式實際完成演算法,所有範例程式不但詳細解說程式運作,而且列印出程式執行結果。本電子書以非常精美的彩色圖形,及簡易的敘述來說明演算法,有些圖形瀏覽完畢以後,對於問題的解決方法即有一個概念。除了以數學來說明演算法的執行效率外,並以實際的執行結果評估其優劣。對於一些科學、工商業及教育上的應用程式設計,本書也有介紹。
本書各章附有3種C/C++程式範例(Dev-C++,Visual C++,OpenCV),及練習題,並附有最新的devcpp-5.0.0.4安裝與使用之詳細圖解說明。
本書適合大學資訊、理工、商、農、醫等科系選修電腦課程的學生,做為教科書或參考書之用。對於軟體設計有興趣的高中、職學生及欲參加政府公務人員考試或軟體設計檢定考試的人員,本書也可做為進修參考之用。
本書總共有21章,各章的內容皆非常豐富,以下只列出一些章節:例如第6章遞迴,介紹以Dev-C++,或OpenCV繪圖。第9章介紹各種改良的希爾排序與快速排序函數,後者排序10,000,000個隨機數整數,只需要2.47秒。間接排序法,將50,000個考生的學測成績總分依由大而小的順序排序,只需要40毫秒。第10章外部排序,介紹本書獨有的十路合併排序演算法,並完成複雜的程式設計。將1,000,000個參加大學入學甄試的考生成績記錄:包括考號、國文、數學、英文等五科成績及總分,完成排序所需的時間只有3.3秒。第16章詳細介紹B -樹與B+樹的插入,刪除與搜尋演算法,並完成B -樹的插入,刪除與搜尋等範例程式。第18章矩陣,以實際範例介紹矩陣應用於衛星影像的幾何校正;於矩陣在並行處理上的應用一節,以實際範例說明如何將電腦處理資料的時間縮短為原來的1/8。第20章資料壓縮以實用範例介紹3種資料壓縮方法,第21章非常詳細的介紹國內資料結構書籍探討很少的記憶體管理。

章節目錄

目錄摘要
第1章 資料結構概論
1.1導論 1.2 結構化的程式設計 1.3物件導向設計開發軟體的方法 1.4 測試程式 1.5 程式語言的選用 1.6 基本資料結構 1.7 C++基本觀念 1.8 別名 1.9 搖擺指標 1.10 類(class)的設計
1.11 過載運算子 1.12 樣板 1.13 動態記憶體配置
第2章 演算法複雜度分析
2.1簡介 2.2 Ο符號觀念 2.3 Ο符號定義 2.4實際分析演算法的複雜度
第3章 陣列與結構
3.1 基本資料類型 3.2 陣列 3.3結構
第4章 堆疊與佇列
4.1 堆疊 4.2 中序、後序和前序 4.3 佇列
第5章 鏈接串列
5.1 串列結構 5.2 循序鏈接串列 5.3 用單鏈接串列製作堆疊 5.4 使用單鏈接串列製作佇列
5.5 多項式的加法 5.6 多項式的乘法 5.7 循環鏈接串列5.8 雙鏈接串列
5.8.3 以雙鏈接串列做長整數的加法 5.8.4 以雙鏈接串列做長整數的乘法
第6章 遞迴理論與應用
6.1 遞迴 6.2 階乘函數 6.3 費布那西數列 6.4 遞迴方法應用於電腦繪圖(Dev-C++實作)
6.5 遞迴方法應用於數學運算的實例 6.6 將遞迴函數改成使用疊代法的函數
6.7 河內塔問題 6.8 迷宮問題6.9 排列問題6.10 用遞迴方法化前序式為後序式
第7章 二元搜尋樹
7.1二元樹7.2二元搜尋樹7.3穿線二元樹
第8章 優先佇列
8.1 優先佇列的製作 8.2 堆樹 8.3 堆樹演算法 8.4 k-堆樹 8.5 左翼堆樹 8.6 斜堆樹
8.7 二項式佇列
第9章 內部排序
9.1 基本觀念 9.2 氣泡排序 9.3 直接選擇排序 9.4 插入排序 9.5 希爾排序 9.6 二元樹排序
9.7 合併排序 9.8 基數排序 9.9 堆排序 9.10 快速排序 -- 9.10.2 改良的快速排序
9.11 間接排序法 9.12 實際測試各種排序法的執行時間
第10章 外部排序
10.1 外部排序 10.2 雙路合併排序 10.3 平衡的多路合併-- 10.3.2 十路合併排序的程式設計
第11章 內部搜尋
11.1 概念 11.2 循序搜尋 11.3 二元搜尋 11.4 內插順序搜尋 11.5 字串搜尋
第12章 雜湊法
11.1雜湊法11.2 雜湊函數 11.3 開放散列法 11.4 封閉散列法 11.5 重散列
11.6 有序散列表 11.7 使用雜湊表的字串搜尋 11.8 散列定址法的選用
第13章 旋轉的平衡二元樹
13.1 平衡二元搜尋樹 AVL樹 13.2 自己調整高度的二元搜尋樹 展開樹
第14章 多路樹轉換成紅黑樹
14.1多路樹14.2 2 -3樹與2 -4樹 14.3 2 -3 -4樹各種運算 14.4 紅黑樹
14.5 紅黑樹的建立 14.6 紅黑樹的搜尋 14.7 紅黑樹的插入運算
14.8 紅黑樹的刪除運算 14.9 紅黑樹的效率 14.10 檢索樹(Trie樹)
第15章 圖形演算法
15.1 圖形基本觀念 15.2 圖形正式的定義 15.3 圖形表示 15.4 圖形的搜尋
15.5 邊的插入函數 15.6 邊的刪除函數 15.7 有向圖形 15.8 拓樸排序15.9 最短路徑
15.10 最佳化二元搜尋樹 15.11 工作網絡 15.12 雙連接性 15.13 強連成分
15.14 合併尋找演算法--15.14.3 路徑壓縮15.15 最小跨距樹-- 15.15.1普里姆演算法
15.15.2克魯斯克爾演算法15.16 流動網絡問題 15.17 配對問題
第16章 B -樹與B+樹
16.1 簡介 16.2 索引順序存取方法 16.3 B -樹 16.4 B+ 樹(附程式) 16.5 可擴充散列法
第17章 隨機數
17.1 概論 17.2 線性同餘法 17.3 加同餘法 17.4 隨機數特性測試
第18章 向量及矩陣
18.1 向量及矩陣 18.2 高斯消去法 18.3 矩陣在影像處理上的應用 18.4 矩陣在並行處理上的應用
第19章 積分
19.1 長方形法 19.2 梯形法 19.3 合成法 19.4 辛普森規則
19.5 具有無限大的範圍或異常點的積分 19.6 雙重積分
第20章 資料壓縮
20.1 資料壓縮概說 20.2 哈夫曼編碼法 20.3 掃描長度編碼法 20.4 LZW編碼法
第21章 記憶體管理
21.1 概念 21.2 循序適用法 : 第一適法、最適法、最不適法、下一適法
21.3 非循序適用法 21.4 釋放記憶體區段 21.5 同伴系統 21.6 垃圾收集器
附錄【習題解答】 【DevC++安裝與使用】 【參考文獻】

作者介紹

作者 : 陳同利
學歷 : Asian Institute of Technology
Computer Science 碩士、博士班
著作 : 計算機應用
演算法、資料結構與程式設計應用(使用C/C++)
資料結構、演算法與應用程式設計(使用C/C++)
宏基資料結構與演算法(C/C++)
精研資料結構(C/C++)
精讀資料結構、演算法(C/C++)

留言Facebook 留言

Yokim825 2014-11-19 09:17
Excellent !!
顯示更多