算法設計技巧與分析

出版時間:2010-10  出版社:電子工業(yè)  作者:阿蘇外耶  頁數(shù):318  
Tag標簽:無  

前言

算法設計與分析是計算機科學技術(shù)中處于核心地位的一門專業(yè)基礎(chǔ)課,越來越受到重視。本書系統(tǒng)地介紹了一些常用的、經(jīng)典的算法設計技術(shù),并給出了詳細的復雜性分析。全書分七部分19章,內(nèi)容含有遞歸技術(shù)、分治、動態(tài)規(guī)劃、貪心算法、圖的遍歷等,同時也包括了近年來發(fā)展迅速的近似算法、概率算法和幾何算法,對于NP完全問題等復雜性理論的基礎(chǔ)內(nèi)容,也做了基本的、清楚的描述。本書結(jié)構(gòu)合理,選材適度,陳述簡明易讀,每章附有適量的各種類型練習,沒有過難或研討性題目,適合于教學和自學。出版后已被許多大學選做本科和研究生的教材及參考書。作者M.H.Alsuwaiyel在沙特阿拉伯的King Fahd University of Petroleum & Minerals(KFUPM,皇家法哈德石油礦業(yè)大學)完成大學學業(yè),在南加州(USC)大學獲得計算機科學碩士和博士學位。作者曾任KFUPM的計算機科學系主任、工程與計算機學院院長。他在沙特阿拉伯有廣泛的學術(shù)影響,是政府(包括內(nèi)務部和國防部在內(nèi))的高級顧問。本書的翻譯工作是在朱洪教授的主持下進行的,全書主要由吳偉昶、方世昌翻譯,朱洪審校。對于發(fā)現(xiàn)的原書中的錯誤,在翻譯時已做了糾正,主要的錯誤已給予說明。上海應用技術(shù)學院計算機系的教師徐克奇、蔡旖旎、吳曉偉參與了部分翻譯工作。復旦大學計算機系研究生李夷磊、葛啟、謝之易、李鎮(zhèn)堅、王海濤、馬俊、田世俊、張涌、張華、李鎮(zhèn)堅、李夷磊、謝之易等閱讀了本書的大部分譯稿,并提出了許多寶貴的意見。對于他們的幫助表示最衷心的感謝。由于譯者本身的水平,翻譯中難免有錯誤,懇請讀者批評指正。

內(nèi)容概要

本書是國際著名算法專家李德財教授主編的系列叢書Lecture Notes Series on Computing中的一本。本書涵蓋了絕大多數(shù)算法設計中的一般技術(shù),在表達每一種技術(shù)時,闡述它的應用背景,注意用與其他技術(shù)比較的方法說明它的特征,并提供大量實際問題的例子。本書同時也強調(diào)了對每一種算法的詳細的復雜性分析。全書分七部分19章,從算法設計和算法分析的基本概念和方法入手,先后介紹了遞歸技術(shù)、分治、動態(tài)規(guī)劃、貪心算法、圖的遍歷等技術(shù),對NP完全問題進行了基本但清楚的討論。對概率算法、近似算法和計算幾何這些近年來發(fā)展迅猛的領(lǐng)域也用一定的篇幅講述了基本內(nèi)容。書中每章后都附有大量的練習題,有利于讀者對書中內(nèi)容的理解和應用。    本書結(jié)構(gòu)簡明,內(nèi)容豐富,適合于作為計算機學科及相關(guān)學科算法課程的教材和參考書,尤其適宜于學過數(shù)據(jù)結(jié)構(gòu)和離散數(shù)學課程之后的算法課程教材。同時也可作為從事算法研究的一本好的入門書。

作者簡介

作者:(沙特)阿蘇外耶(M.H.Alsuwaiyel) 譯者:吳偉昶 方世昌 等 注釋 解說詞:朱洪

書籍目錄

第一部分 基本概念和算法導引第1章 算法分析基本概念 1.1 引言 1.2 歷史背景 1.3 二分搜索 1.4 合并兩個已排序的表 1.5 選擇排序 1.6 插入排序 1.7 自底向上合并排序 1.8 時間復雜性 1.9 空間復雜性 1.10 最優(yōu)算法 1.11 如何估計算法運行時間 1.12 最壞情況和平均情況的分析 1.13 平攤分析 1.14 輸入大小和問題實例 1.15 練習 1.16 參考注釋第2章 數(shù)學預備知識 2.1 集合、關(guān)系和函數(shù) 2.2 證明方法 2.3 對數(shù) 2.4 底函數(shù)和頂函數(shù) 2.5 階乘和二項式系數(shù) 2.6 鴿巢原理 2.7 和式 2.8 遞推關(guān)系 2.9 練習第3章 數(shù)據(jù)結(jié)構(gòu) 3.1 引言 3.2 鏈表 3.3 圖 3.4 樹 3.5 根樹 3.6 二叉樹 3.7 練習 3.8 參考注釋第4章 堆和不相交集數(shù)據(jù)結(jié)構(gòu) 4.1 引言 4.2 堆 4.3 不相交集數(shù)據(jù)結(jié)構(gòu) 4.4 練習 4.5 參考注釋第二部分 基于遞歸的技術(shù)第5章 歸納法 5.1 引言 5.2 兩個簡單的例子 5.3 基數(shù)排序 5.4 整數(shù)冪 5.5 多項式求值(Horner規(guī)則) 5.6 生成排列 5.7 尋找多數(shù)元素 5.8 練習 5.9 參考注釋第6章 分治 6.1 引言 6.2 二分搜索 6.3 合并排序 6.4 分治范式 6.5 尋找中項和第k小元素 6.6 快速排序 6.7 大整數(shù)乘法 6.8 矩陣乘法 6.9 最近點對問題 6.10 練習 6.11 參考注釋第7章 動態(tài)規(guī)劃 7.1 引言 7.2 最長公共子序列問題 7.3 矩陣鏈相乘 7.4 動態(tài)規(guī)劃范式 7.5 所有點對的最短路徑問題 7.6 背包問題 7.7 練習 7.8 參考注釋第三部分 最先割技術(shù)第8章 貪心算法 8.1 引言 8.2 最短路徑問題 8.3 最小耗費生成樹(Kruskal算法) 8.4 最小耗費生成樹(Prim算法) 8.5 文件壓縮 8.6 練習 8.7 參考注釋第9章 圖的遍歷 9.1 引言 9.2 深度優(yōu)先搜索 9.3 深度優(yōu)先搜索的應用 9.4 廣度優(yōu)先搜索 9.5 廣度優(yōu)先搜索的應用 9.6 練習 9.7 參考注釋第四部分問題的復雜性第10章 NP完全問題 10.1 引言 10.2 P類 10.3 NP類 10.4 NP完全問題 10.5 co-NP類 10.6 NPI類 10.7 四種類之間的關(guān)系 10.8 練習 10.9 參考注釋第11章 計算復雜性引論 11.1 引言 11.2 計算模型:圖靈機 11.3 k帶圖靈機和時間復雜性 11.4 離線圖靈機和空間復雜性 11.5 帶壓縮和線性增速 11.6 復雜性類之間的關(guān)系 11.7 歸約 11.8 完全性 11.9 多項式時間層次 11.10 練習 11.11 參考注釋第12章 下界 12.1 引言 12.2 平凡下界 12.3 決策樹模型 12.4 代數(shù)決策樹模型 12.5 線性時間歸約 12.6 練習 12.7 參考注釋第五部分克服困難性第13章 回溯法 13.1 引言 13.2 3著色問題 13.3 8皇后問題 13.4 一般回溯方法 13.5 分支限界法 13.6 練習 13.7 參考注釋第14章 隨機算法 14.1 引言 14.2 Las Vegas和Monte Carlo算法 14.3 隨機化快速排序 14.4 隨機化的選擇算法 14.5 測試串的相等性 14.6 模式匹配 14.7 隨機取樣 14.8 素數(shù)性測試 14.9 練習 14.10 參考注釋第15章 近似算法 15.1 引言 15.2 基本定義 15.3 差界 15.4 相對性能界 15.5 多項式近似方案 15.6 完全多項式近似方案 15.7 練習 15.8 參考注釋第六部分域指定問題的迭代改進第16章 網(wǎng)絡流 16.1 引言 16.2 預備知識 16.3 Ford-Fulkerson方法 16.4 最大容量增值 16.5 最短路徑增值 16.6 Dinic算法 16.7 MPM算法 16.8 練習 16.9 參考注釋第17章 匹配 17.1 引言 17.2 預備知識 17.3 網(wǎng)絡流方法 17.4 二分圖的匈牙利樹方法 17.5 一般圖中的最大匹配 17.6 二分圖的On2.5算法 17.7 練習 17.8 參考注釋第七部分計算幾何技術(shù)第18 章幾何掃描 18.1 引言 18.2 幾何預備知識 18.3 計算線段的交點 18.4 凸包問題 18.5 計算點集的直徑 18.6 練習 18.7 參考注釋第19章 Voronoi圖解 19.1 引言 19.2 最近點Voronoi圖解 19.3 Voronoi圖解的應用 19.4 最遠點Voronoi圖解 19.5 最遠點Voronoi圖解的應用 19.6 練習 19.7 參考注釋參考文獻

章節(jié)摘錄

插圖:1.1引言最一般的直覺意義上的算法①就是一個由有限的指令集組成的過程。從可能的輸人集中給這個過程一個輸入,如果系統(tǒng)地執(zhí)行該指令集,那么對于這個特定的輸人,當輸出存在時,就能得到輸出;當沒有輸出時,就什么結(jié)果也得不到??赡艿妮斎爰侵改茏屧撍惴ńo出一個輸出的所有輸入。如果對于一個特定的輸入有一個輸出,那么就說該算法能用于這一輸入,執(zhí)行該算法能夠得到相應的輸出。我們要求算法對于每一個輸入能停下來,這意味著每一條指令只需要有限的時間,同時每一個輸入的長度是有限的。我們還要求對于一個合法輸人所對應的輸出是惟一的。也就是說當算法從一個特定的輸入開始,多次執(zhí)行同一指令集時,結(jié)果總是相同,從這個意義上講算法是確定的。第14章研究隨機算法時將放寬這一條件。在計算機科學領(lǐng)域,算法設計與分析是十分重要的。正如Donald E.Knuth所說,“計算機科學就是算法的研究”。這沒什么可驚訝的,因為計算機科學的每個領(lǐng)域都高度依賴于有效算法的設計。舉個簡單例子,編譯程序和操作系統(tǒng)不外乎就是具有特定目標的算法的直接實現(xiàn)。本章的目的有兩個:首先介紹一些簡單的算法,特別是與搜索和排序相關(guān)的那一類;其次講述用于算法設計和分析的基本概念。由于算法的“運行時間”這一概念對于設計有效算法是至關(guān)重要的,我們將對它進行深入討論??傊?,時間是衡量算法有效性的最好測度。我們也會討論其他重要資源的測度,比如一個算法所需要的空間等。本章給出的算法雖然簡單,但它們是解釋一些算法概念的許多例子的基礎(chǔ)。從簡單有用的、在更復雜的算法中被用做構(gòu)件模塊的算法開始,是非常有益的。1.2 歷史背景20世紀早期,尤其在30年代,能否用一種有效的過程(即相當于現(xiàn)在所說的算法)來求解問題受到廣泛關(guān)注。在那時,人們的注意力是放在問題的可解或不可解的分類上,即是否存在有效過程來求解問題。為此,產(chǎn)生了對計算模型的需要。如果應用這個模型能夠建立一個算法來求解這個問題,那么這個問題就被歸人可解的問題類。其中的一些模型是哥德爾(del)的遞歸函數(shù)、丘奇(Church)的入演算、波斯特(Post)的波斯特機和圖靈(luring)的圖靈機。RAM計算模型是作為實際的計算機的理論上的補充被引人的。根據(jù)丘奇的論斷,所有這些模型是等效的,即意味著如果一個問題在其中的一個模型上是可解的,那么對于所有其他的模型,該問題都是可解的。

編輯推薦

《算法設計技巧與分析》是國外計算機科學教材系列

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    算法設計技巧與分析 PDF格式下載


用戶評論 (總計67條)

 
 

  •   在國內(nèi)翻譯外文著作中還好的了,書的內(nèi)容適合對算法有一定基礎(chǔ)的,拔高的書籍,很不錯的書
  •   這本書介紹了一些一般算法書不常提到的算法,值得好好讀讀.
  •   這本書對我學編程幫助挺大的,里面對算法的分類很不錯,挺好的一本算法書!
  •   恩,不錯,算是算法導論的精簡版,看不了那么大部頭的書可以看這個
  •   考研考博必備專業(yè)書,值得推薦的算法類教材
  •   有關(guān)算法的很多練習,對于算法的理解幫助很大
  •   知識點很多,很多算法讓人耳目一新。
  •   這本書還是挺好的,結(jié)構(gòu)挺好,講的還算比較清楚
  •   是上交的計算機專業(yè)教材,夠?qū)I(yè)夠難
  •   買了兩本,速度很快,一天就到了,正版啊~~~就是書里面的知識太難,嗚嗚。。
  •   請網(wǎng)站及時更行書本的相關(guān)信息,我看到的是藍色的書,買的是紅色的,好在內(nèi)容一樣
  •   收到書花了4天。書翻譯的差強人意,不過這本書還是挺不錯的,質(zhì)量也很好。
  •   非常好的書,十分好
  •   其實是教輔資料了,書摸上去質(zhì)感也挺好的,看著很舒服,但有股臭臭的味道,,,不知道是油墨還是什么
  •   書編的挺好的,可以當做課本用~
  •   上課的教材,交大的老師說這書不錯,翻譯的也不錯
  •   要上課的書,是想要的那本
  •   但是到手上略有點褶皺 破損 我很喜歡書 所以很心疼
  •   書不錯翻譯質(zhì)量也還可以
  •   書質(zhì)量還行,就是翻譯差點
  •   書的品質(zhì)好,送貨也快
  •   稍微看了看,不知道是翻譯有誤還是原版如此,有些地方表達不通順
  •   內(nèi)容解釋較全面,值得一讀
  •   紙張還行,物流非常給力,隔天就收到了,內(nèi)容還沒看,現(xiàn)在看來總體不錯
  •   內(nèi)容比嚴蔚敏奶奶的要多,還沒看完繼續(xù)看
  •   實用,但是難度較高,偏重于數(shù)學。
  •   很好 講得詳細
  •   感覺不錯,看目錄從淺入深,應該適合初學者
  •   讀書時不努力,現(xiàn)在蛋疼
  •   不錯,送貨及時
  •   上課要用的 學校都沒有了 來的很及時
  •   還沒讀呢.
  •   經(jīng)典之作,很是受益
  •   有C語言的基礎(chǔ)就能夠看懂!
  •   價格比較便宜 書是新的 和同學一起訂了的 感覺不錯 會常來看哦
  •   好使用!??!
  •   速度很快 質(zhì)量超好 不錯的
  •   通常翻譯的書都不怎么樣,所以就不評價翻譯了。
    書的內(nèi)容還可以,涉及的算法的面很廣,算法講的簡明但是完整,每部分其實可以算是對相關(guān)問題的一個引子??梢钥焖偃腴T。然后如果對相關(guān)問題還敢興趣的話,可以查閱算法導論去看算法的詳細的分析
  •   學校要求要訂的書,講到一些算法思想,對優(yōu)化編程有一些幫助。
  •   算法的入門級參考書吧
  •   好難好難
    不過例子超多
  •   今天剛剛收到書,可能下雨天的關(guān)系吧,邊角有點皺,不過整體挺好的。。。
  •   書的包裝不錯,內(nèi)容還沒看,只是這次速度很慢!
  •   還沒開始讀。真不知道是什么原因,這本書有股怪味,,我周圍同學買的也是有。。。
  •   還沒有看,似乎是高校教材,紙張一般吧
  •   教材,沒什么可以說的
  •   應該算不錯吧 但可能不太適合我
  •   以前在當當買過多次書,都沒什么問題。這次就沒查看,現(xiàn)在當我打開書時書的20-33頁就有7頁印刷有問題,即是字雙重錯開,看不清楚。其他部分暫時還沒有發(fā)現(xiàn)問題。希望下次能夠?qū)ζ淦煜聲畤栏癜殃P(guān)。
  •   內(nèi)容還算豐富,但是感覺部分內(nèi)容說的太簡單抽象了……
  •   書里面的內(nèi)容沒的說,不錯。老師推薦的教材。但是卓越的服務態(tài)度太差了。到手后書脊全部壞掉了。膠裂了兩處,害得我用膠帶粘起來湊合用。
  •   算法設計的經(jīng)典書籍,
  •   封面好像是紅色的 建議你們吧圖片換掉成和實物一致
  •   老師指定的參考書,看完它了,真心不錯,比算法導論簡單易懂
  •   很不錯的一本算法圖書
  •   這本算法分析的書講得比較好,用得偽代碼,零基礎(chǔ)的同學都可以看懂!贊一個!
  •   感覺書本不錯的,只是我不是很看得懂
  •   買了好幾本書,就這本質(zhì)量最好了
  •   之前學校訂教材,自己沒有買……還行吧,算法分析本來就一門比較難的課,這書寫的相對比較簡略
  •   覺得應該是一本好書。
  •   總體挺不錯的,就是讀著有點枯燥
  •   除了算法導論,個人覺得最不錯的介紹算法的書了,適合教學。
  •   發(fā)貨很快,,書是正版,,,學習算法的教材書哦??!
  •   書很不錯,值得購買,評價一下
  •   內(nèi)容不錯 ,適合學習
  •   一本將算法的書
  •   很不錯 ,很喜歡很不錯 ,很喜歡
  •   算法書中的經(jīng)典
 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機版

京ICP備13047387號-7