-
>
貨幣大歷史:金融霸權與大國興衰六百年
-
>
(精)方力鈞作品圖錄
-
>
《藏書報》2021合訂本
-
>
(精)中國當代書畫名家作品集·范碩:書法卷+繪畫卷(全2卷)
-
>
(噴繪樓閣版)女主臨朝:武則天的權力之路
-
>
書里掉出來一只狼+狼的故事-全2冊
-
>
奇思妙想創意玩具書(精裝4冊)
函數式算法設計的藝術 版權信息
- ISBN:9787111775102
- 條形碼:9787111775102 ; 978-7-111-77510-2
- 裝幀:平裝-膠訂
- 冊數:暫無
- 重量:暫無
- 所屬分類:
函數式算法設計的藝術 本書特色
本書專門介紹了算法設計的五項主要原則:分而治之、貪心算法、減而治之、動態規劃和窮舉搜索。這些原則是用Haskell這種純函數式語言來闡述的,與使用命令式語言相比,解釋更簡單,程序更短。書中還配有精心挑選的例子(既有新示例,也有標準示例),展示了算法之間的共性和差異。算法開發在適用的情況下使用等式推理,闡明適用性條件和正確性論證。每章*后都附有習題(共近300道),每道習題都有完整的答案,便于讀者鞏固理解,并將這些技術應用于一系列問題。本書適用于計算機科學與技術及軟件工程相關專業學生(包括本科生和研究生)、研究人員、教師和專業人士,可以幫助他們進一步了解如何設計和實現優秀的算法,以及如何用純函數術語來表達這些算法。
函數式算法設計的藝術 內容簡介
本書介紹了算法設計的五個主要原則:分治法、貪婪算法、稀疏、動態程序設計和窮舉搜索。讓學生、教師、研究人員和專業人員更好地了解一個好的算法是如何組成的,以及如何用純函數的形式表達這些算法。
函數式算法設計的藝術函數式算法設計的藝術 前言
譯者序
如果真有一門絕世武功,“招式”和“內功”孰輕孰重?如果說這個問題真有答案,那么在我講授C語言程序設計多年之后,開始與本書相遇相知時似乎逐漸找到了。
長久以來,函數式編程因為側重原理而被認為更接近于“內功”。由于某些情況下的性能問題以及學習資料的缺乏,函數式編程一直沒有成為主導。近年來,計算機硬件性能的提升帶來了轉機,我們看到舊語言逐漸引入函數式的特性、新語言在構建之初就考慮更多函數式的設計。
在這本書里,當分而治之、貪心算法、減而治之、動態規劃、窮舉搜索這些算法用Haskell純函數式語言來實現時,簡短的代碼體現出了科學思想與工程優雅。外化于形、內化于心的交相輝映令人沉醉!無論對于Haskell程序設計,還是對于C語言程序設計,“招式”和“內功”的兼收并蓄都是一個更高的境界!
本書的作者是牛津大學的Richard Bird和Jeremy Gibbons教授。令人遺憾的是,Richard Bird教授在2022年4月4日離開了我們,他一生致力于推廣函數式編程,對算法和程序設計做出了偉大貢獻。在翻譯這本書的過程中,我深感他文字之魅力和思想之深邃。大家在閱讀此書時產生不同編程思維碰撞的電光火石是對Richard*好的緬懷。
函數式算法設計的藝術 目錄
前言
**部分基礎知識
第1章函數式編程
11基本類型與函數
12處理列表
13歸納與遞歸的定義
14融合
15累積與串聯
章節注釋
參考文獻
練習第2章時間
21漸近表示法
22估計運行時間
23上下文中的運行時間
24均攤運行時間
章節注釋
參考文獻
練習第3章實用的數據結構
31對稱列表
32隨機訪問列表
33數組
章節注釋
參考文獻
練習第二部分分而治之
第4章二分查找
41一維查找
42二維查找
43二叉搜索樹
44動態集
章節注釋
參考文獻
練習第5章排序
51快速排序
52歸并排序
53堆排序
54桶排序及基數排序
55排序總和
章節注釋
參考文獻
練習第6章選擇
61*大和*小
62單集合中的選擇
63雙集合中的選擇
64從補集中選擇
章節注釋
參考文獻
練習
第三部分貪心算法
第7章列表的貪心算法
71通用貪心算法
72貪心排序算法
73硬幣兌換問題
74TEX中的十進制小數
75不確定性函數和精化
76總結
章節注釋
參考文獻
練習第8章樹的貪心算法
81*小高度樹
82哈夫曼編碼樹
83優先隊列
章節注釋
參考文獻
練習第9章圖的貪心算法
91圖和生成樹
92Kruskal算法
93不相交集和聯合查找算法
94Prim算法
95單源*短路徑
96Dijkstra算法
97慢跑者問題
章節注釋
參考文獻
練習
第四部分減而治之
第10章簡化算法介紹
101基本理論
102分層網絡中的路徑
103再論硬幣兌換
104背包問題
105一種通用的簡化算法
章節注釋
參考文獻
練習第11章片段和子序列
111*長上升子序列
112*長公共子序列
113和*大子段
章節注釋
參考文獻
練習第12章劃分
121劃分的生成方法
122管理兩個銀行賬戶
123段落問題
章節注釋
參考文獻
練習
第五部分動態規劃
第13章高效遞歸
131兩個數字的例子
132再論背包問題
133*小代價編輯序列
134再論*長公共子序列
135穿梭巴士問題
章節注釋
參考文獻
練習第14章*佳劃分
141立方時間復雜度的算法
142平方時間復雜度的算法
143復雜度算法示例
144單調性證明
145*佳二叉搜索樹
146GarsiaWachs算法
章節注釋
參考文獻
練習第六部分窮舉搜索
第15章搜索方法
151隱式搜索和n皇后問題
152給定和的表達式
153深度優先搜索與廣度優先搜索
154登月問題
155預先規劃
156高峰時間問題
章節注釋
參考文獻
練習第16章啟發式搜索
161樂觀啟發式搜索
162單調啟發式搜索
163倉庫導航
1648數碼問題
章節注釋
參考文獻
練習附錄練習答案
函數式算法設計的藝術 作者簡介
理查德·伯德(Richard Bird)牛津大學名譽教授,著有多部廣受好評的Haskell相關書籍,包括《Haskell函數式程序設計》和《函數式算法設計珠璣》。
杰里米·吉本斯(Jeremy Gibbons)牛津大學計算機科學教授,在該校教授軟件工程非全日制專業碩士課程。他是Journal of Functional Programming的聯合主編、IFIP Working Group 2.1 on Algorithmic Languages and Calculi的前任主席以及ACM SIGPLAN的前任副主席。
- >
人文閱讀與收藏·良友文學叢書:一天的工作
- >
【精裝繪本】畫給孩子的中國神話
- >
經典常談
- >
煙與鏡
- >
李白與唐代文化
- >
小考拉的故事-套裝共3冊
- >
姑媽的寶刀
- >
上帝之肋:男人的真實旅程