暫無商品咨詢信息 [發(fā)表商品咨詢]
兩位作者先解釋數(shù)學家想要解決的問題,然后告訴大家如何把這些數(shù)學解法轉化為泛型編程算法,并編寫出效高而優(yōu)雅的代碼。閱讀本書,讀者將掌握高效編程所必需的思維過程,并學習如何在不降低效率的情況下推廣狹義算法,從而拓展其用途。
在這本內容豐富且通俗易懂的著作中,軟件設計先驅亞歷山大·斯捷潘諾夫 (Alexander Stepanov) 和他的同事丹尼爾·羅斯 (Daniel Rose) 闡明了泛型編程的原理及其所基于的數(shù)學抽象概念,幫助讀者編寫更簡潔、更強大的代碼。在閱讀本書的過程中,讀者將掌握高效編程的思路,并學會怎樣在保持效率的前提下,對適用范圍較窄的算法做推廣。這可以讓你深刻地領悟到:數(shù)學與編程相結合有著什么樣的意義。無論采用何種編程語言與編程范式,數(shù)學思想都能給編程工作帶來巨大的價值。
亞歷山大·斯捷潘諾夫(Alexander Stepanov)是一位俄裔美國計算機學家,他是為人熟知的泛型編程的倡導者,以及C++標準模板庫的主要設計者和實現(xiàn)者。他于1992年左右在惠普實驗室工作期間開始開發(fā)該庫,并于1995年榮獲Dr. Dobb’s Journal杰出編程獎。他在編程基礎方面的工作得到了通用電氣公司 (GE)、貝爾實驗室、惠普、SGI、Adobe 以及亞馬遜搜索技術子公司A9.com的支持。
丹尼爾·羅斯(Daniel Rose)是一位研究科學家,曾在蘋果、AltaVista、Xigo、雅虎和A9.com擔任管理職務。他的研究涵蓋搜索技術的各個方面,從索引壓縮的低級算法到網絡搜索中的人機交互問題。羅斯領導的蘋果團隊為Macintosh開發(fā)了桌面搜索功能。他擁有加州大學圣地亞哥分校認知科學和計算機科學博士學位以及哈佛大學學士學位。
第 1 章 內容提要
1.1 編程與數(shù)學
1.2 從歷史的角度來講解
1.3 閱讀準備
1.4 各章概述
第 2 章 算法初談
2.1 埃及乘法算法
2.2 改進該算法
2.3 本章要點
第 3 章 古希臘的數(shù)論
3.1 整數(shù)的幾何屬性
3.2 篩選素數(shù)
3.3 實現(xiàn)該算法并優(yōu)化其代碼
3.4 完美數(shù)
3.5 畢達哥拉斯學派的構想
3.6 畢氏構想中的嚴重缺陷
3.7 本章要點
第 4 章 歐幾里得算法
4.1 雅典與亞歷山大
4.2 歐幾里得的最大公度量算法
4.3 缺乏數(shù)學成就的一千年
4.4 奇怪的0
4.5 求余及求商算法
4.6 用同一份代碼來實現(xiàn)求余及求商
4.7 對最大公約數(shù)算法進行驗證
4.8 本章要點
第 5 章 現(xiàn)代數(shù)論的興起
5.1 梅森素數(shù)與費馬素數(shù)
5.2 費馬小定理
5.3 消去
5.4 證明費馬小定理
5.5 歐拉定理
5.6 模運算的應用
5.7 本章要點
第 6 章 數(shù)學中的抽象
6.1 群
6.2 幺半群與半群
6.3 與群有關的定理
6.4 子群及循環(huán)群
6.5 拉格朗日定理
6.6 理論與模型
6.7 舉例說明范疇理論與非范疇理論
6.8 本章要點
第 7 章 推導泛型算法
7.1 厘清算法所應滿足的要求
7.2 對模板參數(shù)A提出要求
7.3 對模板參數(shù)N提出要求
7.4 提出新的要求
7.5 將乘法算法改編為冪算法
7.6 對運算本身加以泛化
7.7 計算斐波那契數(shù)
7.8 本章要點
第 8 章 更多代數(shù)結構
8.1 斯蒂文、多項式及最大公約數(shù)
8.2 哥廷根與德國數(shù)學
8.3 埃米·諾特與抽象代數(shù)的誕生
8.4 環(huán)
8.5 矩陣乘法與半環(huán)
8.6 半環(huán)的運用:社交網絡與最短路徑
8.7 歐幾里得整環(huán)
8.8 域及其他的代數(shù)結構
8.9 本章要點
第 9 章 整理數(shù)學知識
9.1 證明
9.2 數(shù)學史上的第一個定理
9.3 歐幾里得與公理化方法
9.4 與歐氏幾何并立的其他幾何學
9.5 希爾伯特的形式化方法
9.6 皮亞諾與他的公理
9.7 用皮亞諾公理來構建算術體系
9.8 本章要點
第 10 章 編程的基本概念
10.1 亞里士多德與抽象
10.2 值與類型
10.3 concept
10.4 迭代器
10.5 迭代器的種類、所支持的操作及所具備的特性
10.6 區(qū)間
10.7 線性搜索
10.8 二分搜索
10.9 本章要點
第 11 章 置換算法
11.1 置換與換位
11.2 交換兩個區(qū)間內的元素
11.3 旋轉
11.4 利用循環(huán)來執(zhí)行旋轉
11.5 倒置
11.6 空間復雜度
11.7 內存自適應算法
11.8 本章要點
第 12 章 再論最大公約數(shù)算法
12.1 硬件的限制催生出更為高效的算法
12.2 Stein 算法的推廣
12.3 貝祖等式
12.4 擴展最大公約數(shù)算法
12.5 最大公約數(shù)算法的運用
12.6 本章要點
第 13 章 實際運用
13.1 密碼學
13.2 素數(shù)測試
13.3 米勒 - 拉賓素數(shù)測試
13.4 RSA 算法的步驟及原理
13.5 本章要點
第 14 章 全書總結
延伸閱讀
附錄 A 記法
附錄 B 常用的證明方法
附錄 C 寫給非C++程序員看的C++知識
參考文獻
索引
| 基本信息 | |
|---|---|
| 出版社 | 世界圖書出版公司 |
| ISBN | 9787523225912 |
| 條碼 | 9787523225912 |
| 編者 | [美]亞歷山大·斯捷潘諾夫(AlexanderStepanov),[美]丹尼爾·羅斯(DanielRose) 著 |
| 譯者 | -- |
| 出版年月 | 2025-08-01 00:00:00.0 |
| 開本 | 其他 |
| 裝幀 | 平裝 |
| 頁數(shù) | |
| 字數(shù) | |
| 版次 | 1 |
| 印次 | |
| 紙張 | 一般膠版紙 |
暫無商品評論信息 [發(fā)表商品評論]
暫無商品咨詢信息 [發(fā)表商品咨詢]