關於演算法的書
⑴ 請大俠給我推薦幾個演算法的書.因為我沒讀過,所以請在回答的時候告訴我推薦的理由,最好有內容.
《演算法導論》
本書深入淺出,全面地介紹了計算機演算法。對每一個演算法的分析既易於理解又十分有趣,並保持了數學嚴謹性。本書的設計目標全面,適用於多種用途。涵蓋的內容有:演算法在計算中的作用,概率分析和隨機演算法的介紹。本書專門討論了線性規劃,介紹了動態規劃的兩個應用,隨機化和線性規劃技術的近似演算法等,還有有關遞歸求解、快速排序中用到的劃分方法與期望線性時間順序統計演算法,以及對貪心演算法元素的討論。本書還介紹了對強連通子圖演算法正確性的證明,對哈密頓迴路和子集求和問題的NP完全性的證明等內容。全書提供了900多個練習題和思考題以及敘述較為詳細的實例研究。
目錄(Table of Contents)
前言(Preface)
第一部分(Part I) 基礎(Foundations)
第一章 計算中演算法的角色(The Role of Algorithms in Computing)
第二章 開始(Getting Started)
第三章 函數的增長率(Growth of Functions)
第四章 遞歸(Recurrences)
第五章 概率分析與隨機化演算法(Probabilistic Analysis and Randomized Algorithms)
第二部分(Part II) 排序與順序統計(Sorting and Order Statistics)
第六章 堆排序(Heapsort)
第七章快速排序(Quicksort)
第八章 線性時間中的排序(Sorting in Linear Time)
第九章 中值與順序統計(Medians and Order Statistics)
第三部分(Part III) 數據結構(Data Structures)
第十章 基本的數據結構(Elementary Data Structures)
第十一章 散列表(Hash Tables)
第十二章 二叉查找樹(Binary Search Trees)
第十三章 紅-黑樹(Red-Black Trees)
第十四章 擴充的數據結構(Augmenting Data Structures)
第四部分(Part IV) 高級的設計與分析技術(Advanced Design and Analysis Techniques)
第十五章 動態規劃(Dynamic Programming)
第十六章 貪婪演算法(Greedy Algorithms)
第十七章 分攤分析(Amortized Analysis)
第五部分(Part V) 高級的數據結構(Advanced Data Structures)
第十八章 B-樹(B-Trees)
第十九章 二項式堆(Binomial Heaps)
第二十章 斐波納契堆(Fibonacci Heaps)
第二十一章 不相交集的數據結構(Data Structures for Disjoint Sets)
第六部分(Part VI) 圖演算法(Graph Algorithms)
第二十二章 基本的圖演算法(Elementary Graph Algorithms)
第二十三章 最小生成樹(Minimum Spanning Trees)
第二十四章單源最短路徑(Single-Source Shortest Paths)
第二十五章 全對的最短路徑(All-Pairs Shortest Paths)
第二十六章 最大流(Maximum Flow)
第七部分(Part VII) 精選的主題(Selected Topics)
第二十七章 排序網路(Sorting Networks)
第二十八章矩陣運算(Matrix Operations)
第二十九章 線性規劃(Linear Programming)
第三十章 多項式與快速傅里葉變換(Polynomials and the FFT)
第三十一章 數論演算法(Number-Theoretic Algorithms)
第三十二章 字元串匹配(String Matching)
第三十三章 計算幾何學(Computational Geometry)
第三十四章 NP-完備性(NP-Completeness)
第三十五章 近似演算法(Approximation Algorithms)
第八部分(Part VIII) 附錄:數學背景(Mathematical Background)
附錄A 求和(Summations)
附錄B 集合,等等。(Sets, Etc.)
附錄C 計數與概率(Counting and Probability)
參考文獻(Bibliography)
索引(Index)
⑵ 我想學計算機演算法,推薦一本書
演算法(推薦兩本):
《The Art of Computer Programming》, Donald.E.Knuth
即《計算機程序設計藝術》(第三版),中文版 國防大學出版社;
《Introction.to.Algorithms》
即《演算法導論(原書第2版)》, 中文版 機械工業出版社;
這兩門是演算法中《聖經》級的書,非常棒!
⑶ 有哪些學習演算法的入門書籍
原理 入門:《編碼:隱匿在計算機軟硬體背後的語言》
這是一本講述計算機工作原理的書。
不過,你千萬不要因為「工作原理」之類的字眼就武斷地認為,它是晦澀而難懂的。作者用豐富的想像和清晰的筆墨將看似繁雜的理論闡述得通俗易懂,你絲毫不會感到枯燥和生硬。 更重要的是,你會因此而獲得對計算機工作原理較深刻的理解。這種理解不是抽象層面上的,而是具有一定深度的,這種深度甚至不遜於「電氣工程師」和「程序員」的理解。
不管你是計算機高手,還是對這個神奇的機器充滿敬畏之心的菜鳥,都不妨翻閱一下《編碼:隱匿在計算機軟硬體背後的語言》,讀一讀大師的經典作品,必然會有收獲。
實戰 晉升:《編程珠璣》
正如自然界里珍珠出自細沙對牡蠣的磨礪,計算機科學大師 Jon Bentley 以其獨有的洞察力和創造力,從磨礪程序員的實際問題中凝結出一篇篇不朽的編程「珠璣」,成為世界計算機界名刊《ACM通訊》歷史上最受歡迎的專欄,最終結集為兩部不朽的計算機科學經典名著,影響和激勵著一代又一代程序員和計算機科學工作者。
本書為第一卷,主要討論計算機科學中最本質的問題:如何正確選擇和高效地實現演算法。
永恆的經典:《代碼大全》
Steve McConnell 的原作《代碼大全》(第1版)是公認的關於編程的最佳實踐指南之一, 在過去的十多年間,本書一直在幫助開發人員編寫更好的軟體。
現在,作者將這本經典著作全新演繹,融入了最前沿的實踐技術,加入了上百個嶄新的代碼示例, 充分展示了軟體構建的藝術性和科學性。 McConnell匯集了來自研究機構、學術界以及業界日常實踐的主要知識, 把最高效的技術和最重要的原理交織融會為這本既清晰又實用的指南。
無論您的經驗水平如何,也不管您在怎樣的開發環境中工作,也無論項目是大是小, 本書都將激發您的思維並幫助您構建高品質的代碼。
⑷ 有哪些好的有關演算法的書
《演算法導論》
《演算法競賽入門經典》
《挑戰編程》
《挑戰程序設計競賽》
《演算法藝術與信息學競賽》
《演算法設計》
《具體數學:計算機科學基礎》
⑸ 學習演算法比較好的書
學習演算法比較好的書
ACM,《演算法導論》和《演算法藝術與信息學奧賽》一般認為是必看的。
《演算法導論》比較全了,但仍然有些演算法沒有涉及到(沒辦法,ACM沒有考綱),但我建議看完兩本書後不要在找書了,ACM的其他的演算法已經很少。去POJ大量A題,其他演算法可以在做題過程中補充學習
⑹ 推薦一些演算法比較好的書
劉汝佳的《演算法藝術與信息學競賽》,這本書很適合搞演算法競賽的看。
《演算法導論》這本書就不用多說了,經典
Udi Manber 的《Introction to Algorithms: A Creative Approach》中文名《演算法引論:一種創造性方法》
當然還有很多書,上面三本我有幸看過
⑺ 計算機相關專業想學習演算法,需要看哪些書
《演算法與數據結構》,《計算機組成原理,匯編語言》,《數字邏輯》,《編譯原理》,《計算機網路》,《面向對象的程序設計等》。
⑻ 求推薦一本關於演算法的書
《演算法導論》 比較理論 (系統和理論結合)
《演算法藝術與信息學競賽》 第二版 劉汝佳 (再加深)
《ACM國際大學生程序設計競賽試題與解析》全部冊 吳文虎著,清華大學出版社 (入門級)
⑼ 求高手推薦幾本關於演算法方面的書,我是計算機專業的大一新生。
剛入門C語言,首先多花些精力熟悉C的結構和用法吧。計算機專業一般會在下學期或者大二的時候開設「數據結構」這門課。如果想提前熟悉演算法的話,推薦看看《數據結構》這本教材(清華大學出版社,嚴蔚敏)。另外再推薦一本演算法的最最經典的參考書:《演算法導論》(有英文版和中文版)。就之前學習的經驗來看,《演算法導論》一本足矣。其他的書只不過是看起來更符合我們中國同學的學習習慣,所以理解起來可能更簡單。
對於演算法的學習,這里給出一點小小的建議:
①熟悉語言的應用(對你來說就是C語言)
②了解數據結構,因為演算法和數據結構是一體的
③可以的話試著參加ACM演算法競賽,只有通過不斷的練習和事件,才能最終熟悉各種演算法的實現。
⑽ 想學一些關於演算法的知識,請推薦幾本書或教材好嗎
最好的《演算法導論》,不過可能不太適合初學者,但是可以把這本書當做最終目標。
《演算法藝術與信息學競賽》也不錯,也適合ACM。
再有什麼《數據結構與演算法》之類的。
不過最好的演算法來源是前輩的課件和指導,這樣的帶有個人理解的演算法再加入自己的理解,可以很快就能掌握。