書籍詳介 |
內容簡介:榮獲美國出版人協會(Association of American Publishers)電腦資訊科學最佳書籍獎電腦網路技術無所不在:每天,我們從海量的資訊中搜尋到所要的資訊、我們上傳照片到臉書上、我們運用公鑰加密來傳送私人資訊例如信用卡號碼等等、我們使用數位簽章來確認所造訪的網站的真偽…… 這本書介紹了讓電腦網路世界得以運作,塑造今日人類生活的九種最重要的演算法(algorithm)。作者挑選這九大演算法的標準是: 1.每天會被一般電腦使用者用到的演算法。 2.必須能解決現實世界的具體問題。 3.主要是與資訊科學理論有關的演算法。 4. 美、簡潔、優雅。 本書所介紹的九大演算法是:搜尋引擎的索引(search engine indexing)、網頁排序(page rank)、公鑰加密(public-key cryptography)、錯誤更正碼(error-correcting codes)、模式辨識(pattern recognition,如手寫辨識、聲音辨識、人臉辨識等等)、資料壓縮(data compression)、資料庫(databases)、數位簽章(digital signature),以及一種如果存在的話將會很了不起的偉大演算法,並探討電腦能力的極限。 作者將我們日常生活會用到的電腦功能背後的道理,以淺顯易懂的方式介紹,不具備資訊科學的背景也可以了解。而且令人驚喜的是,每一種演算法,都是一個解決問題的創意與線索,也讓我們得以一窺近代數學家、資訊科學家的努力探索成果。面對越來越科技化的現代生活與職場挑戰,這些基本原理和概念值得我們去了解、吸收,為未來世界做好準備。 媒體好評: 「這是一本很容易讀的書,介紹了一些很重要的演算法。最重要的是,這本書傳達了一種神奇——不光是指科技的成就,而是使得電腦發揮神奇功能的美麗科學。」 Andreas Trabesinger,《自然物理學》(Nature Physics) 「這本書寫得非常好……風格相當平易近人,適合廣大讀者閱讀。」 John Gilbey,《泰晤士報高等教育專刊》(Times Higher Education) 「作者讓讀者有一種發動機的感覺,這台發動機為網路世界提供動力……本書讓讀者體會真實世界,開始看到這些演算法在你我周遭活跳跳。」 Kevin Slavin,《新科學家》(New Scientist) 「成功地把電腦科學呈現給廣大群眾。」 Ernest Davis,《工業與應用數學學會通訊》(SIAM News) 「作者讓大家稍稍體會到,我們電腦科學家們之所以對演算法如此興奮的原因——因為演算法的功用,還有它們的美與優雅。」 Paul Curzon,《科學》(Science) 目錄:前言 第1章 引言 讓今日電腦威力無窮的神奇概念 演算法:天才就在彈指間 偉大演算法的條件是什麼? 這些偉大的演算法為什麼重要? 第2章 搜尋引擎的索引:配對與排序 AltaVista:第一個網路規模的配對演算法 古早時代的陽春式索引 文字─位置技法 排序與相鄰 元詞技法 光是標註索引和配對技法還不夠 第3章 網頁排序:讓谷歌起飛的技術 超連結技法 權威性技法 隨機漫遊技法 網頁排序的實作 第4章 公鑰加密:用明信片寄送祕密 用共同的祕密來加密 設定一個公開的共同祕密 實務上的公鑰加密 第5章 錯誤更正碼:錯誤可以自己修正! 偵錯與改正的必要性 重複的技法 冗餘技法 校驗技法 定點目標技法 真實世界中的糾錯與偵錯 第6章 模式辨識:從經驗中學習 問題是什麼? 最近鄰居技法 二十個問題技法:決策樹 神經網路 模式辨識:過去、現在、未來 第7章 資料壓縮:白吃的午餐 無損失的壓縮:終極的白吃午餐 有損失的壓縮:不是白吃的午餐,但很划算 壓縮演算法的由來 第8章 資料庫:追求一致性 交易與待辦事項清單技法 複製資料庫所用的「準備然後承諾技法」 關聯式資料庫與虛擬表格技法 資料庫的人性面 第9章 數位簽章:這軟體到底是誰寫的? 數位簽章究竟用來做什麼? 書面簽字 上鎖的簽字 利用乘法鎖來簽字 利用指數型鎖來簽字 數位簽章的實務 解決矛盾 第10章 什麼是可計算的? 程式錯誤、毀壞和軟體的可靠度 反證法 用於分析其他程式的程式 有些程式不可能存在 尋找當機的程式不可能存在 電腦的極限給我們的啟示 第11章 結論:未來會如何呢? 頗具潛力的演算法 偉大的演算法可能失去光彩嗎? 我們學到了什麼? 旅程的結束 資料來源與延伸閱讀 |