出版時間:2006-4 出版社:華中科技 作者:周偉明 頁數(shù):380
Tag標(biāo)簽:無
內(nèi)容概要
本書和傳統(tǒng)同類書籍的區(qū)別是除了介紹基本的數(shù)據(jù)結(jié)構(gòu)容器如棧、隊列、鏈表、樹、二叉樹、紅黑樹、AVL樹和圖之外,引進(jìn)了多任務(wù);還介紹了將任意數(shù)據(jù)結(jié)構(gòu)容器變成支持多任務(wù)的方法;另外,還增加了復(fù)合數(shù)據(jù)結(jié)構(gòu)和動態(tài)數(shù)據(jù)結(jié)構(gòu)等新內(nèi)容的介紹。在復(fù)合數(shù)據(jù)結(jié)構(gòu)中不僅介紹了哈希鏈表、哈希紅黑樹、哈希AVL樹等容器,還介紹了復(fù)合數(shù)據(jù)結(jié)構(gòu)的通用設(shè)計方法;在動態(tài)數(shù)據(jù)結(jié)構(gòu)中主要介紹了動態(tài)環(huán)形隊列、動態(tài)等尺寸內(nèi)存管理算法。在內(nèi)存管理中介紹了在應(yīng)用程序?qū)訉崿F(xiàn)的內(nèi)存垃圾回收算法、內(nèi)存泄漏檢查和內(nèi)存越界檢查的方法等。本書選取的內(nèi)容均側(cè)重于在實際中有廣泛應(yīng)用的數(shù)據(jù)結(jié)構(gòu)和算法,有很好的商業(yè)使用價值。 本書大部分章節(jié)中都列舉并介紹了應(yīng)用實例,如用AVL樹等容器實現(xiàn)的搜索引擎、用數(shù)組實現(xiàn)HOOK管理、用鏈表實現(xiàn)的短信息系統(tǒng)中的CACHE管理、用哈希表實現(xiàn)WebServer中的CACHE文件管理和用哈希AVL樹實現(xiàn)抗DoS/DDoS攻擊等。 書中重點介紹了軟件的各種質(zhì)量特性如時間效率和空間效率之間的關(guān)系,介紹了如何在各種質(zhì)量特性間取得均衡的原則,并介紹了各種數(shù)據(jù)結(jié)構(gòu)算法的應(yīng)用場合和范圍。 本書介紹的所有數(shù)據(jù)結(jié)構(gòu)及算法都以不同復(fù)雜程度給出其編碼實現(xiàn)。為了便于讀者自學(xué),每章末附有小結(jié)和思考練習(xí)題。 本書可供高校計算機(jī)及相關(guān)專業(yè)作為教學(xué)參考書,對從事軟件開發(fā)與應(yīng)用的科研人員、工程技術(shù)人員以及其他相關(guān)人員也具有較高的參考價值。
作者簡介
周偉明,作者有較豐富的實踐經(jīng)驗,曾工作于美國加州的DASCOM Inc公司(現(xiàn)為IBM的全資子公司)和國內(nèi)某大型電信設(shè)備研發(fā)公司等各名企業(yè),一直從事網(wǎng)絡(luò)安全軟件、網(wǎng)絡(luò)服務(wù)器軟件,機(jī)器翻譯軟件、工作軟件、嵌入式系統(tǒng)軟件等研發(fā)工作,親自寫過的源代碼愈40萬行。
書籍目錄
1 緒論 1.1 引言 1.2 C語言編程常見問題分析 1.2.1 參數(shù)校驗問題 1.2.2 return語句的問題 1.2.3 while循環(huán)和for循環(huán)的問題 1.2.4 if語句的多個判斷問題 1.2.5 goto語句問題 1.2.6 switch…case和if…elseif的效率區(qū)別 1.3 任意數(shù)據(jù)類型處理 1.3.1 任意數(shù)據(jù)類型處理的設(shè)計方法 1.3.2 任意數(shù)據(jù)類型處理的實例 1.3.3 任意數(shù)據(jù)類型處理的回調(diào)函數(shù)封裝 1.4 多任務(wù)介紹 1.4.1 多任務(wù)簡介 1.4.2 鎖的概念 1.4.3 Windows下常用多任務(wù)操作函數(shù) 1.4.4 Linux/Unix下常用多任務(wù)操作函數(shù) 1.4.5 VxWorks下常用多任務(wù)操作函數(shù) 1.4.6 多任務(wù)函數(shù)的封裝 1.5 軟件設(shè)計簡介 1.5.1 軟件設(shè)計歷史簡述 1.5.2 微觀設(shè)計學(xué)原理簡介2 數(shù)組 2.1 ?! ?.1.1 棧的基本概念 2.1.2 棧的編碼實現(xiàn) 2.1.3 多任務(wù)棧的實現(xiàn) 2.2 隊列 2.2.1 隊列的基本概念和接口 2.2.2 環(huán)形隊列(Queue) 2.2.3 STL中的動態(tài)隊列(STL∷deque) 2.2.4 動態(tài)環(huán)形隊列 2.2.5 各種隊列的時間效率測試及分析 2.2.6 各種隊列的適用范圍 2.2.7 關(guān)于時間效率和空間效率的原則 2.3 排序表 2.3.1 排序算法介紹 2.3.2 快速排序算法 2.3.3 排序表的設(shè)計 2.3.4 非遞歸的快速排序算法 2.3.5 快速排序算法的復(fù)雜度分析 2.3.6 二分查找算法 2.4 實例:HOOK管理功能的實現(xiàn) 2.4.1 單個函數(shù)的HOOK實現(xiàn) 2.4.2 多個函數(shù)的HOOK實現(xiàn) 2.4.3 HOOK功能的應(yīng)用簡介 2.4.4 HOOK使用的注意事項 本章小結(jié) 習(xí)題與思考 3 鏈表 3.1 單向鏈表 3.1.1 單向鏈表的存儲表示 3.1.2 單向鏈表的接口設(shè)計 3.1.3 單向鏈表的基本功能編碼實現(xiàn) 3.2 單向鏈表的逐個節(jié)點遍歷 3.2.1 單向鏈表逐個節(jié)點遍歷基本概念 3.2.2 單向鏈表逐個節(jié)點遍歷編碼實現(xiàn) 3.3 單向鏈表的排序 3.3.1 插入排序 3.3.2 歸并插入排序 3.3.3 基數(shù)排序 3.4 雙向鏈表 3.4.1 雙向鏈表的基本概念 3.4.2 雙向鏈表的設(shè)計 3.4.3 雙向鏈表的編碼實現(xiàn) 3.5 使用整塊內(nèi)存的鏈表 3.5.1 整塊內(nèi)存鏈表的基本概念 3.5.2 整塊內(nèi)存鏈表的編碼實現(xiàn) 3.6 實例:使用鏈表管理短信息系統(tǒng)的CACHE 3.6.1 短信息系統(tǒng)的CACHE管理基本概念 3.6.2 短信息系統(tǒng)的發(fā)送和接收分析 3.6.3 短信息系統(tǒng)CACHE管理的編碼實現(xiàn) 本章小結(jié) 習(xí)題與思考4 哈希表5 樹6 復(fù)合二叉樹7 圖8 多任務(wù)算法9 內(nèi)存管理算法附 參考答案
媒體關(guān)注與評論
書評`
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載
多任務(wù)下的數(shù)據(jù)結(jié)構(gòu)與算法 PDF格式下載