算法引論

出版時間:2010-1  出版社:電子工業(yè)出版社  作者:[美]烏迪·曼博(Udi Manber)  頁數(shù):334  
Tag標簽:無  

前言

編寫本書的動機來源于我在教學(xué)實踐中常常無法為給定算法給出清晰解析的困惑。與許多教師一樣,我發(fā)現(xiàn)對一些學(xué)生來說,要他們親自動手解決一些簡單問題有困難,而讓他們理解給定問題的解決方案同樣有困難。我相信,事物的兩個方面——創(chuàng)造和解釋——是相關(guān)而不可分離的。為了完全了解一個問題,考察最后的答案遠遠不夠,我們必須了解問題的求解過程。 本書強調(diào)了算法設(shè)計的創(chuàng)造性方面,其主要目的是要告訴讀者如何去設(shè)計一個新的算法。本書描述算法的順序不是“問題X、算法A、算法A'、程序P、程序P'”,而是像(但并不總是)“問題X、直接明了的問題求解算法、缺點、改進這些缺點的困難、(可能包含一些錯誤的)好的算法、進一步的改進、分析以及其他方法和算法的關(guān)系”。本書的目標不是給出一個容易轉(zhuǎn)換為程序代碼的算法,而是希望讀者理解算法的原理。算法因此被解釋為創(chuàng)造過程而不是最終產(chǎn)品。我們講授算法的目標不僅是說明如何求解特定的問題,還包括傳授如何求解未來將產(chǎn)生或遇到的新問題的技術(shù)??梢哉f,講授算法設(shè)計的思維過程與講授問題求解細節(jié)是同樣重要的。

內(nèi)容概要

本書是國際算法大師烏迪·曼博(Udi Manber)博士撰寫的一本享有盛譽的著作。全書共分12章:第1章到第4章為介紹性內(nèi)容,涉及數(shù)學(xué)歸納法、算法分析、數(shù)據(jù)結(jié)構(gòu)等內(nèi)容;第5章提出了與歸納證明進行類比的算法設(shè)計思想;第6章到第9章分別給出了4個領(lǐng)域的算法,如序列和集合的算法、圖算法、幾何算法、代數(shù)和數(shù)值算法;第10章涉及歸約,也是第11章的序幕,而后者涉及NP完全問題;第12章則介紹了并行算法;最后是部分習(xí)題的答案及參考文獻。本書的特色有二,旨在提高讀者的問題求解能力,使讀者能夠理解算法設(shè)計的過程和思想:一是強調(diào)算法設(shè)計的創(chuàng)造性過程,注重算法設(shè)計背后的創(chuàng)造性思想,而不拘泥于某個具體算法的詳細討論;二是將算法設(shè)計類比于定理歸納證明,揭示了算法設(shè)計的基本思想和本質(zhì)。    本書的組織結(jié)構(gòu)清晰且易于理解,強調(diào)了創(chuàng)造性,具有濃郁特色,時至今日仍有其巨大的價值,并且適合作為計算機及相關(guān)專業(yè)算法和高級算法課程的教材。

作者簡介

曼博(Udi Manber)美國著名的計算機科學(xué)家,國際公認的算法大師,在線信息搜索引擎的先驅(qū)。1982年于華盛頓大學(xué)獲得計算機科學(xué)博士學(xué)位,曾是美國亞利桑那大學(xué)計算機專業(yè)教授。離開學(xué)校后在雅虎公司擔(dān)任執(zhí)行官,閆前是亞馬遜(Amazon.com)的副總裁和首席算法師(CAO),也是亞馬遜旗下搜索網(wǎng)站A9.corn的首席執(zhí)行官。他提出的UDI測試已經(jīng)成為衡量搜索引擎質(zhì)量的評估標準。

書籍目錄

第1章  引論第2章 數(shù)學(xué)歸納法 2.1  引言 2.2 三個簡單的例子 2.3 平面內(nèi)區(qū)域的計數(shù) 2.4 簡單的著色問題 2.5 復(fù)雜一些的加法題 2.6 一個簡單的不等式 2.7 歐拉公式 2.8 圖論中的一個問題 2.9 格雷碼 2.10 在圖上尋找無重邊的路 2.11 數(shù)學(xué)平均數(shù)和幾何平均數(shù)定理 2.12 循環(huán)不變量:將十進制數(shù)轉(zhuǎn)換為二進制數(shù) 2.13 常見的錯誤 2.14 小結(jié)第3章 算法分析 3.1 引言 3.2 符號O 3.3 時間與空間復(fù)雜度 3.4 習(xí)之和 3.5 遞推關(guān)系  3.5.1 巧妙地猜測  3.5.2 分治關(guān)系  3.5.3 涉及全部歷史的遞推關(guān)系 3.6 一些有用的證明論據(jù) 3.7 小結(jié)第4章 數(shù)據(jù)結(jié)構(gòu)簡介 4.1  引言 4.2 基本數(shù)據(jù)結(jié)構(gòu)  4.2.1 元素  4.2.2 數(shù)組  4.2.3 記錄  4.2.4 鏈表 4.3 樹  4.3.1  樹的表示  4.3.2 堆  4.3.3 二叉搜索樹  4.3.4 AVL樹 4.4 散列 4.5 合并碴找問題 4.6  圖 4.7 小結(jié)第5章 基于歸納的算法設(shè)計 5.1  引言 5.2 多項式求值 5.3 最大導(dǎo)出子圖 5.4 尋找一對一映射 5.5 社會名流問題 5.6 分治算法:輪廓問題 5.7 在二叉樹中計算平衡因子 5.8 尋找最大連續(xù)子序列 5.9 增強歸納假設(shè) 5.10 動態(tài)規(guī)劃:背包問題 5.11 常見的錯誤 5.12 小結(jié)第6章 序列和集合的算法 6.1  引言 6.2 二叉搜索的幾種形式  6.2.1  純二叉搜索  6.2.2 循環(huán)序列的二叉搜索  6.2.3 二叉搜索特殊下標  6.2.4 二叉搜索長度未知的序列  6.2.5 重疊子序列問題  6.2.6 解方程 6.3  內(nèi)插搜索 6.4 排序  6.4.1 桶排序和基數(shù)排序  6.4.2 插入排序和選擇排序  6.4.3 歸并排序  6.4.4 快速排序  6.4.5 堆排序  ……第7章 圖算法第8章 幾何算法第9章 代數(shù)和數(shù)值算法第10章 歸約第11章 NP完全問題第12章 并行算法部分習(xí)題答案參考文獻

章節(jié)摘錄

插圖:在《韋氏大學(xué)詞典(第九版)》中,算法的解釋是“求解數(shù)學(xué)問題(如尋找最大公約數(shù))的一個過程,該過程步驟有限,通常還涉及重復(fù)的操作;廣義地說,算法是按部就班解決一個問題或完成某個目標的過程。本書取廣義的算法來定義。算法設(shè)計是一個古老的研究領(lǐng)域。自古以來,人們總是對發(fā)現(xiàn)更好的目標求解方法充滿興趣,不論是取火、建造金字塔還是對郵件進行排序。而計算機算法的研究當(dāng)然是一個新的領(lǐng)域。一些計算機算法采用的方法早在計算機發(fā)明之前就存在,但大多數(shù)計算機算法的設(shè)計需要新的方法和技術(shù)。首先,告訴計算機諸如“察看小山,如果發(fā)現(xiàn)敵情就拉響警報”是不夠的。一臺計算機必須了解“察看”的確切含義,知道如何識別敵情,懂得如何拉響警報(基于技術(shù)原因,拉響警報是最容易的)。一臺計算機可接受的指令應(yīng)當(dāng)是定義明確、長度有限的基本操作序列。將通常的命令轉(zhuǎn)換為計算機可以理解的指令是一個困難的過程,而該過程就是編程,目前有成百萬的程序員正在不同層次上進行編程。計算機上的編程,所需要的不僅僅是將那些為人所理解的命令轉(zhuǎn)換為計算機可以理解的語言。在大多數(shù)情況下,程序員必須設(shè)計出完全嶄新的算法來求解問題。只學(xué)習(xí)與計算機交談所用的怪異語言會使編程變得困難,因為只有計算機才知道你說了什么。計算機不僅能以極快的速度執(zhí)行先前由人完成的操作,它還可以做得更多。計算機能處理數(shù)十億、數(shù)萬億比特單位的信息,能在一秒內(nèi)完成數(shù)百萬條基本指令。在這個數(shù)量級上進行算法設(shè)計是一種嶄新的實踐,有很多方面會與我們的直覺相反,因為我們通常只對自己能感知的事物進行思考。遺憾的是,一些能很好解決小問題的程序在處理大問題時就變得很糟。因此當(dāng)進行大規(guī)模計算時不要忽視算法的復(fù)雜度和有效性。

編輯推薦

《算法引論:一種創(chuàng)造性方法》是國際算法大師烏迪·曼博(UdiManber)博士撰寫的一本享有盛譽的著作,強調(diào)了算法設(shè)計的創(chuàng)造性方面,通過算法開發(fā)步驟來描述算法設(shè)計過程。此外,《算法引論:一種創(chuàng)造性方法》創(chuàng)造性地將算法設(shè)計過程同定理歸納證明過程進行類比,揭示了算法設(shè)計的基本思想和本質(zhì),旨在提高讀者的問題求解以及理解算法設(shè)計的過程和思想的能力?!端惴ㄒ?一種創(chuàng)造性方法》特點:包括經(jīng)典算法以及流行算法算法設(shè)計技巧及其綜合應(yīng)用并行算法設(shè)計犬多數(shù)算法的偽代碼表示500多道習(xí)題,其中四分之一給出了答案將算法實現(xiàn)細節(jié)和算法思想盡可能分離

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    算法引論 PDF格式下載


用戶評論 (總計45條)

 
 

  •   Amazon的原首席技術(shù)官所作。應(yīng)該屬于最好的算法書之一。本書的特色是強調(diào)了證明與演繹的過程,讓人知其然并知其所以然,這一點是強過《算法導(dǎo)論》(the CLRS book)的地方。本書更適合有一定編程基礎(chǔ),想從全新角度學(xué)習(xí)算法的人士。如果是零基礎(chǔ)的純?nèi)腴T,也許CLRS更好,應(yīng)為更詳細(相應(yīng)的,廢話會更多)。
  •   對比經(jīng)典的塞奇?zhèn)タ说摹端惴↖-IV》,開創(chuàng)算法學(xué)科傳奇的《計算機程序設(shè)計藝術(shù)》...等等,這本少了學(xué)院式的推導(dǎo)和工具書查閱的實用,但是,卻多了一份至關(guān)重要的:怎么樣思考,用算法的思想來思考,從而更具有在實踐中自行得到適合解決方案的能力!
  •   算法的設(shè)計不僅要熟悉一些經(jīng)典算法,還要知其所以然,這樣才能在解決具體問題中來設(shè)計出有效的算法。這本書用歸納法的來分析了很多算法的設(shè)計,讓思維過程更加連貫,繼續(xù)學(xué)習(xí)中
  •   本書可以告訴我們算法從哪里來。正如本書副標題的一種創(chuàng)造性方法,當(dāng)我們掌握了這種方法以后,我們就有一種不同一般的觀點。再讀其它算法方面的書時,我們會有一種不過如此的感覺。這是一本二十年前的九陰真經(jīng)。
  •   循序漸進的講解了算法的各種知識。
  •   沒有《算法導(dǎo)論》細,但題目更多。
  •   作者在算法界是個神般的人物,里面有他多年從事算法研究的心得,是獨家的,其他人其他書都沒有的,受益匪淺。
  •   這本書有些高級,建議先學(xué)些初級的數(shù)據(jù)結(jié)構(gòu)。
  •   內(nèi)容新穎,適合用作教材
  •   這本書相當(dāng)不錯,感覺正是我急需的
  •   原來就想買這本書,然而缺貨,現(xiàn)在終于買到了,是新版本的
  •   網(wǎng)上高手推薦的此書~買來拜讀解惑~
    快遞速度超快~這次兩天就到貨~包裝質(zhì)量也都無問題~可惜的是書體有點臟~
  •   讓人知其然跟知其所以然,知道what,更知道why
  •   工科生的書,我不懂啊。。??此恢倍荚诳?,應(yīng)該挺不錯的
  •   算法之為何?抽象到具體,算法之精要深入骨髓。唯有創(chuàng)造性算法,才算成就!
  •   這本書主要是分類講解各種算法的理論知識,建議喜歡讀偽代碼學(xué)算法的同志買別的書~
  •   相比《算法導(dǎo)論》,《引論》別具風(fēng)格。以前在圖書館看到,覺得不錯
  •   書不錯,在算法方面介紹得比較全面,主要精神是教你如何分治
  •   書雖然不厚,但內(nèi)容非常詳實,講解的很不錯,不過要是有配套的書(代碼實現(xiàn)、習(xí)題答案)就更好了。
    習(xí)題很難,1/4的有答案,但剩下的3/4就算做了也不知道對不對。
  •   這本書出版日期是2011年的。印刷質(zhì)量貌似不過關(guān),好像還有味道。
  •   很好,值得慢慢深讀!
  •   感覺送貨速度挺快的
  •   本書創(chuàng)造性地將算法設(shè)計過程同定理歸納證明過程進行類比,揭示了算法設(shè)計的基本思想和本質(zhì)
  •   上課用書,主要是數(shù)學(xué)歸納法,還行吧
  •   濂戒功
  •   [...]算法引論:一種創(chuàng)造性方法2009年02月26日 17:04這是一本可以給人帶來巨大閱讀樂趣的專業(yè)書籍。作者娓娓道來,又惜墨如金。用極精煉的語言,為我們指明了一條通向那些美麗算法的線索。我要由衷地說:這本書不僅僅是一些結(jié)果的集合,更是一段美好的旅程。我對書中涉及的內(nèi)容已然熟悉,但讀過之后仍感收獲良多,對算法這門學(xué)問又多了些認識。真的是,寫書當(dāng)如是。      對我來說,算法的教與學(xué)有兩個困難的地方:    其一,我們學(xué)習(xí)了那些經(jīng)典的算法,除了贊嘆一下設(shè)計的巧思,但總難免問上一句:怎么想到的?對學(xué)生來說,這可能是最費解、也最讓人窩火的地方。我們下再多的功夫去記憶書上的算法、去分析這些算法的效率,卻終究不能理喻得到這些算法的過程。心理盤算著:給我一個新問題,讓我設(shè)計個算法出來,我能行嗎?答案是:不知道?!   】蛇@偏偏又是極重要的,無論作研究還是實際工作,一個計算機專業(yè)人士最重要的能力,就是解決問題——解決那些不斷從理論模型、或者從實際應(yīng)用中冒出來的新問題?!   ∑涠?,算法作為一門學(xué)問,有兩條正交的線索。一個是算法處理的對象:數(shù)、矩陣、集合、串(strings)、排列(permutations)、圖(graph...s)、表達式(formula)、分布(distributions),等等。一個是算法的設(shè)計思想:貪婪、分治、動態(tài)規(guī)劃、線性規(guī)劃、局部搜索(local search),等等。這兩條線索幾乎是相互獨立的:同一個離散對象,例如圖,稍有不同的問題,例如single-source shortest path和all-pair shortest path,就可以用到不同的設(shè)計思想,如貪婪和動態(tài)規(guī)劃;而完全不同的離散對象上的問題,例如排序和整數(shù)乘法,也許就會用到相同的思想,例如分治?!   蓷l線索交織在一起,該如何表述。對學(xué)生而言,不同離散對象的差別是直觀的——我們已經(jīng)慣于在一章里面完全講排序、而在另一章里面完全講圖論算法;可是對算法而言,設(shè)計思想的差別是根本的,因為這是從問題的結(jié)構(gòu)來的:不同離散對象上面定義的問題,可以展現(xiàn)出類似的結(jié)構(gòu),而這結(jié)構(gòu)特征,就是支持一類算法的根本,也是我們設(shè)計算法的依據(jù)?!     ?閱讀更多 ›
  •   Udi Manner確實是算法大師,很多國內(nèi)的書對算法的描述都是描述其最終形式,本書描述的是得到最終算法形式的過程,對于我們設(shè)計新算法非常有幫助,很多算法看了其他書再看這本書,會有豁然開朗的感覺!強烈推薦。作者用詞非常嚴謹,思路很嚴密,用語也精練,看這本書的時候大腦比較累,不過也很鍛煉人!看此書時候的相當(dāng)于是數(shù)學(xué)書,我看了此書后再去參加各種算法機試、筆試、面試的時候容易多了!
  •   卓越發(fā)貨速度快,書的質(zhì)量也很好。看了不少算法書,都是翻了幾頁就看不下去。而這本卻是充滿了往下看的興趣。
  •   內(nèi)容不錯,講得挺好,循序漸進的講,值得一看。
  •   我是程序員,我推薦此書
  •   幫朋友買的, 他說還不錯.
  •   推薦IT人士讀,對提升算法很有幫助
  •   耐心看完會有很大的收獲,尤其是在思維方法上
  •   有別于其他經(jīng)典算法圖書主要針對具體算法的詳細討論,重點在于鍛煉算法設(shè)計能力而不是算法應(yīng)用能力。
  •   速度很快??!書也很好,謝謝!
  •   聽說是好書,買了一本,看了很吃力。所以又買了本零基礎(chǔ)學(xué)算法,先補補基礎(chǔ)。
  •   書是好書,可惜發(fā)現(xiàn)的太晚了
  •   翻譯的不夠好, 這要是大多數(shù)譯書的問題.原書太貴了, 而且中國沒得賣, 英文版亞馬遜價格竟然是90美元, 實在是望書興嘆
  •   上課要用的書,內(nèi)容不錯.
  •   本書是一位博士寫的, 未免有點pedantic, 中文翻譯, 感覺技術(shù)有限, 讀起來發(fā)澀. 如果有原版的話, 我是一定不會買這個中文版的, 翻譯的程度, 確實是, 相當(dāng)有限. 只能這么說, 如果是這本的話, 還是推薦各位看原版的書.
  •   有別于一般的算法書
  •   很不錯的書,內(nèi)容很好,我很喜歡。
  •   算法首選書
  •   幫別人買的,號稱很不錯
  •   好書?。。W(xué)習(xí)中?。。。?/li>
 

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

京ICP備13047387號-7