《算法(第4版)》講述算法和數據結構的必備知識,具有以下幾大特色。
1、 算法領域的經典參考書:Sedgewick暢銷著作的版,反映了經過幾十年演化而成的算法核心知識體系
2、內容:論述排序、搜索、圖處理和字符串處理的算法和數據結構,涵蓋每位程序員應知應會的50種算法
3、全新修訂的代碼:全新的Java實現代碼,采用模塊化的編程風格,所有代碼均可供讀者使用
4、與實際應用相結合:在重要的科學、工程和商業應用環境下探討算法,給出了算法的實際代碼,而非同類著作常用的偽代碼
5、富于智力趣味性:簡明扼要的內容,用豐富的視覺元素展示的示例,精心設計的代碼,詳盡的歷史和科學背景知識,各種難度的練習,這一切都將使讀者手不釋卷
6、科學的方法:用合適的數學模型地討論算法性能,這些模型是在真實環境中得到驗證的
7、與網絡相結合:配套網站algs4.cs.princeton.edu提供了本書內容的摘要及相關的代碼、測試數據、編程練習、教學課件等資源
Sedgewick之巨著,與高德納TAOCP一脈相承
幾十年多次修訂,經久不衰的暢銷書
涵蓋所有程序員必須掌握的50種算法
Robert Sedgewick,斯坦福大學博士,導師為Donald E.Knuth,從1985年開始一直擔任普林斯頓大學計算機科學系教授,曾任該系主任,也是AdobeSystems公司董事會成員,曾在Xerox PARC、國防分析研究所(Institute for DefenseAnalyses)和法國國家信息與自動化研究所(INRIA)從事研究工作。他的研究方向包括解析組合學、數據結構和算法的分析與設計、程序可視化等。
KevinWayne,康奈爾大學博士,普林斯頓大學計算機科學系高級講師,研究方向包括算法的設計、分析和實現,特別是圖和離散優化。
第1章 基礎
1.1 基礎編程模型
1.1.1 Java程序的基本結構
1.1.2 原始數據類型與表達式
1.1.3 語句
1.1.4 簡便記法
1.1.5 數組
1.1.6 靜態方法
1.1.7 API
1.1.8 字符串
1.1.9 輸入輸出
1.1.10 二分查找
1.1.11 展望
1.2 數據抽象
1.2.1 使用抽象數據類型
1.2.2 抽象數據類型舉例
1.2.3 抽象數據類型的實現
1.2.4 更多抽象數據類型的實現
1.2.5 數據類型的設計
1.3 背包、隊列和棧
1.3.1 API
1.3.2 集合類數據類型的實現
1.3.3 鏈表
1.3.4 綜述
1.4 算法分析
1.4.1 科學方法
1.4.2 觀察
1.4.3 數學模型
1.4.4 增長數量級的分類
1.4.5 設計更快的算法
1.4.6 倍率實驗
1.4.7 注意事項
1.4.8 處理對于輸入的依賴
1.4.9 內存
1.4.10 展望
1.5 案例研究:union-find算法
1.5.1 動態連通性
1.5.2 實現
1.5.3 展望
第2章 排序
2.1 初級排序算法
2.1.1 游戲規則
2.1.2 選擇排序
2.1.3 插入排序
2.1.4 排序算法的可視化
2.1.5 比較兩種排序算法
2.1.6 希爾排序
2.2 歸并排序
2.2.1 原地歸并的抽象方法
2.2.2 自頂向下的歸并排序
2.2.3 自底向上的歸并排序
2.2.4 排序算法的復雜度
2.3 快速排序
2.3.1 基本算法
2.3.2 性能特點
2.3.3 算法改進
2.4 優先隊列
2.4.1 API
2.4.2 初級實現
2.4.3 堆的定義
2.4.4 堆的算法
2.4.5 堆排序
2.5 應用
2.5.1 將各種數據排序
2.5.2 我應該使用哪種排序算法
2.5.3 問題的歸約
2.5.4 排序應用一覽
第3章 查找
3.1 符號表
3.1.1 API
3.1.2 有序符號表
3.1.3 用例舉例
3.1.4 無序鏈表中的順序查找
3.1.5 有序數組中的二分查找
3.1.6 對二分查找的分析
3.1.7 預覽
3.2 二叉查找樹
3.2.1 基本實現
3.2.2 分析
3.2.3 有序性相關的方法與刪除操作
3.3 平衡查找樹
3.3.1 2-3查找樹
3.3.2 紅黑二叉查找樹
3.3.3 實現
3.3.4 刪除操作
3.3.5 紅黑樹的性質
3.4 散列表
3.4.1 散列函數
3.4.2 基于拉鏈法的散列表
3.4.3 基于線性探測法的散列表
3.4.4 調整數組大小
3.4.5 內存使用
3.5 應用
3.5.1 我應該使用符號表的哪種實現
3.5.2 集合的API
3.5.3 字典類用例
3.5.4 索引類用例
3.5.5 稀疏向量
第4章 圖
4.1 無向圖
4.1.1 術語表
4.1.2 表示無向圖的數據類型
4.1.3 深度優先搜索
4.1.4 尋找路徑
4.1.5 廣度優先搜索
4.1.6 連通分量
4.1.7 符號圖
4.1.8 總結
4.2 有向圖
4.2.1 術語
4.2.2 有向圖的數據類型
4.2.3 有向圖中的可達性
4.2.4 環和有向無環圖
4.2.5 有向圖中的強連通性
4.2.6 總結
4.3 最小生成樹
4.3.1 原理
4.3.2 加權無向圖的數據類型
4.3.3 最小生成樹的API和測試用例
4.3.4 Prim算法
4.3.5 Prim算法的即時實現
4.3.6 Kruskal算法
4.3.7 展望
4.4 最短路徑
4.4.1 最短路徑的性質
4.4.2 加權有向圖的數據結構
4.4.3 最短路徑算法的理論基礎
4.4.4 Dijkstra算法
4.4.5 無環加權有向圖中的最短路徑算法
4.4.6 一般加權有向圖中的最短路徑問題
4.4.7 展望
第5章 字符串
5.1 字符串排序
5.1.1 鍵索引計數法
5.1.2 低位優先的字符串排序
5.1.3 高位優先的字符串排序
5.1.4 三向字符串快速排序
5.1.5 字符串排序算法的選擇
5.2 單詞查找樹
5.2.1 單詞查找樹
5.2.2 單詞查找樹的性質
5.2.3 三向單詞查找樹
5.2.4 三向單詞查找樹的性質
5.2.5 應該使用字符串符號表的哪種實現
5.3 子字符串查找
5.3.1 歷史簡介
5.3.2 暴力子字符串查找算法
5.3.3 Knuth-Morris-Pratt子字符串查找算法
5.3.4 Boyer-Moore字符串查找算法
5.3.5 Rabin-Karp指紋字符串查找算法
5.3.6 總結
5.4 正則表達式
5.4.1 使用正則表達式描述模式
5.4.2 縮略寫法
5.4.3 正則表達式的實際應用
5.4.4 非確定有限狀態自動機
5.4.5 模擬NFA的運行
5.4.6 構造與正則表達式對應的
5.5 數據壓縮
5.5.1 游戲規則
5.5.2 讀寫二進制數據
5.5.3 局限
5.5.4 熱身運動:基因組
5.5.5 游程編碼
5.5.6 霍夫曼壓縮
第6章 背景
索引
是正版書,難度不大,對算法學習幫助很大,推薦購買。
沖著豆瓣高評分買的,自己本身也是搞Java的,也一直想學學算法,增強一下內功,這本書很厚,感覺內容非常詳細,是學習算法的好幫手
這個有實例來實現思想,對算法基礎不那么扎實的人來說,是一本值得細讀的書。
很棒,相比算法導論而言,這本講的簡單易懂,需要一些java語言的基礎。
算法相關的經典之作,用java實現各種算法,書的質量也很好
看到某寶清一色的60,我心真是發堵,抬高價格再打折,不滿額不減,那么問題來了,買一本書的,不過百的都得吃屎對吧?78,貴了整整20,心塞。還搞評論審核,那看來差的評論都過不了關咯?滾回家種田去吧。
把數據結構的算法很好的和java結合了起來,很不錯
正常都是一天到 這次三天 然后發現書角已經磕碎了 我只能用膠紙粘上 以防壞的更厲害 希望當當好好保護這些書
比起算法導論看的下去多了~j講的也很好~ava語言描述~理解算法的同時也幫助了代碼的提高~比起偽碼表述的更喜歡這種
學算法還是個人還是比較推薦這本書,java語言
經典的算法書之一,值得好好讀一讀。相信對于提高算法相關能力會有幫助,該書是用java描述實現的,也很不錯。
很棒一本算法設計的書,其實就是數據結構的算法實現版,用JAVA語言實現了很多好的算法,很喜歡
這個書好的地方在于它里面的java代碼都是可用的,讀的時候就直接可以把書中的例子跑一遍,便于學習,而且書中的插圖非常精美
書真的不錯,雖然用JAVA來寫的,但是用其他語言也可以寫出來。算法嘛語言沒有那么重要。唯一不足的書到了以后有點小折了,而且書的裝訂總體質量不太高。
這次購書不是很滿意,磕碰就不說了,書明明是封好的,但是拆開后有幾頁居然有黑印,還有水漬擦干后留下的印記,不是印書的墨,是泥土,就和掉在有水的水泥地上然后撿起來擦干的樣子差不多。我很懷疑,直接出廠的書會有這種問題?從小到大還是第一次遇見…
這個北京宅急送居然把我書墊在屁股底下坐著等人?雖然不怕壓但是明顯他知道是書才敢坐的吧?不知道是我太計較還是他素質太差呢?整書包裝沒問題但是這個快遞的行為我不敢茍同
這本書也非常牛,用java實現,我覺得這本書是最適合用來算法入門的,說它適合入門不是說它太淺,而是講的深入淺出,非常容易理解,里面那些小彩圖呀,嘖嘖,美極了!建議中英對照著讀。
書非常的好,正好開始也在自學著Java,希望可以學好算法,畢竟語言可以更替,但是算法和數據結構才是靈魂
很厚的一本書,包含算法領域里的一些經典問題,很有特點的是本書對算法的描述采用了一種可視化的途徑,語言用Java 是實現的,針對算法新手,適合入門。
內容很好,算法比較全,而且算法講解過程中配有大量圖片,讓枯燥的算法變得簡單易懂,雖然介紹的是用java做事例,但是算法例子中java的特性很少,所以沒有學過java的不用擔心看不懂,總之這次購物很滿意。
學習算法最好的入門書!包含具體的實現代碼!贊一個~ \(≧▽≦)/
剛開始看有點看不懂,只能慢慢來了,算法是我一大弱點。
挺好的,把java也介紹了一遍,但大師就是大師,有些東西自己原本也知道,但是經作者一梳理總結,就感覺不一樣了,感覺之前學習都學得太淺太浮躁了
在網上買東西很少評論的。在當當買了一共有6本書,大概3本正常,其他三本都是有瑕疵,紙張質量明顯很差,還有就是字跡不清晰。這本《算法》就是,大家買書慎重,有點不想在當當買書了以后
這本書里面算法都已經用java實現,學習算法 數據結構非常好。
哇,當當自營的商品配送速度真是絕了,太快了,這本書我在書店懶得比較貴,所以從當當買,書內容真不錯,用java寫的,不管怎樣,算法都可以移植在各種語言環境中。五星好評。嘻嘻。
這本書真的寫的很棒!推薦作為學計算機的入門書必選之一。我是已經學了多門語言之后再返回來看這本書的,還是學到了很多以前認為本來就是這樣的東西的原理!喜歡!支持!