ACM-ICPC參賽者人手一冊講解演算法的書,你準備了沒?

出版圈郭志敏發表於2013-07-18

《挑戰程式設計競賽》迷你書下載 http://vdisk.weibo.com/s/Kr8nZ

世界頂級程式設計高手的經驗總結

【ACM-ICPC全球總冠軍】巫澤俊主譯

日本ACM-ICPC參賽者人手一冊

先來介紹一下我們這本應該人手一冊的《挑戰程式設計競賽》(第2版)譯者,這顆閃耀在程式設計競賽中的明星巫澤俊,就在2011年的5月30下午2時,他獲得了第35屆ACM國際大學生程式設計競賽全球總決賽冠軍,媒體稱他為“世界最聰明的人”。(見下圖)

enter image description here

enter image description here

巫澤俊平時訓練的實驗室

enter image description here

巫澤俊

讓我們看頂級ACM-ICPC總冠軍是如何來介紹這本譯作的!

程式設計競賽因其涉及的知識面廣,比賽形式激烈有趣,吸引了越來越多的學生參與其中。參賽者不但可以從中鍛鍊演算法設計能力,還能夠提高程式碼編寫能力。其中的佼佼者也受到了越來越多國際知名公司的重視和歡迎。 本書的幾位作者是世界公認的頂尖選手,在競賽和學術領域都取得了令人矚目的成就。他們結合自己的專業知識和比賽經驗,將自己的心得和技巧集結成書。

全書將不同的演算法和例題按專題編排成小節,再將不同的小節由易到難分成四章,這樣即便是初出茅廬的新手也不會有太大的閱讀障礙。書中涵蓋了在程式設計競賽中會用到的大多數演算法和技巧,並在附錄中補充了書中未介紹但也比較有用的演算法。在題材的安排上,作者取捨得當,主次分明,循序漸進,不以華而不實的奇技淫巧誤導讀者,又具有一定深度,相信即便是經驗豐富的老將同樣能從書中有所斬獲。本書在結合例題進行講解時,不是簡單地堆砌問題和程式碼,而是注重引導讀者更好地理解和運用演算法來分析解決問題。對於正在學習資料結構與演算法的讀者而言,把它作為一本練習和擴充的參考書也是很好的選擇。

本書在日本廣受好評,還先後在臺灣地區和韓國出版。近年來程式設計競賽在亞洲發展很快,在中國大陸也出版了不少相關書籍,但鮮見高質量的佳作。所以,在讀到此書時,我們非常驚喜,迫切希望中國大陸也能引進這樣的好書。2012年初,我們通過作者的推特瞭解到了本書第二版的出版,一些前輩們踴躍翻譯計算機專業書籍的經歷也鼓舞了我們,讓我們萌生了親自翻譯此書的念頭並聯絡了圖靈教育。非常幸運的是,圖靈教育也正考慮引進此書,於是有了今天呈現在各位讀者面前的簡體中文版。

在翻譯上,我們力求做到既尊重國內選手的習慣,又符合計算機專業的表述。在修正原書中的一些筆誤的同時,加入了一些譯者注,以方便國內讀者理解。但由於譯者水平有限,不足之處在所難免,還望讀者多多包涵,並不吝提出意見和建議。

在翻譯過程中,秋葉拓哉、巖田陽一和北川宜稔三位作者耐心地對我們的一些疑問和筆誤給予了一一解答和確認。浙江大學的陳越、王燦和翁愷三位老師不但將我們領進了“快樂”競賽的大門,還撥冗審閱了譯稿並提出了寶貴的意見。網上不少同好也對本書的出版給予了關切和支援。在此謹對他們表示感謝。

巫澤俊為什麼要翻譯和推薦本書

  • 原因1,讓更多的ACM-ICPC參賽者少走彎路,從中獲得經驗,能更加穩健的參加競賽

    (引用譯者的話)假如自己早兩年讀到此書,想必能少費不少勁。從我個人的經歷和對周圍同學的瞭解來看,這是一本非常值得引進和推薦的書。

  • 原因2,《挑戰程式設計競賽》是一本很好的教科書 (引用譯者的話)它非常的適合作為有志參加程式設計競賽的同學自學,或是正在學習資料結構與演算法分析的讀者作為練習和擴充的參考書。該書將不同的主題按難度分成了三部分,循序漸進。作為教科書,其一個明顯的特點是,幾乎沒有外鏈,把每個的主題都講得很清楚,便於讀者理解。多數題目附有核心程式碼,程式碼風格也不錯,而且講解的時候會附帶一些思路的說明和方法技巧的總結。

  • 原因3,讓讀者的rating衝上2500

    (引用譯者的話)雖然書中的內容已經足以讓讀者的rating衝上2500,但真要達到2500的實力卻還離不開充足的訓練,通過實踐把書中的內容真正化為己有。另一方面,訓練的方法也是很重要了,好的方法能夠做到事半功倍。正如《挑戰程式設計競賽》最開始所說的:程式設計競賽是綜合了以下兩個要素的複合競賽:

    設計高效且正確的演算法 ;正確地實現;並且,為了設計演算法:

    靈活的想象力;演算法的基礎知識;也是必不可少的。平時訓練過程中切莫顧此失彼。

從目錄結構中看這本書是否符合一個ACM-ICPC參賽者的需求

enter image description here

enter image description here

相關文章