算法競賽入門經典

算法競賽入門經典

《算法競賽入門經典》是2009年11月清華大學出版社出版的圖書,作者是劉汝佳。該書可作為全國青少年信息學奧林匹克聯賽(NOIP)的複賽教材及ACM國際大學比賽。

基本信息

內容提要

《算法競賽入門經典》是一本算法競賽的入門教材,把C/C++語言、算法和解題有機地結合在了一起,淡化理論,注重學習方法和實踐技巧。全書內容分為11章,包括程式設計入門、循環結構程式設計、數組和字元串、函式和遞歸、基礎題目選解、數據結構基礎、暴力求解法、高效算法設計、動態規劃初步、數學概念與方法、圖論模型與算法,覆蓋了算法競賽入門所需的主要知識點,並附有大量習題。書中的代碼規範、簡潔、易懂,不僅能幫助讀者理解算法原理,還能教會讀者很多實用的編程技巧。另外,書中包含的各種開發、測試和調試技巧也是在傳統的語言、算法類書籍中難以見到的。

《算法競賽入門經典》可作為全國青少年信息學奧林匹克聯賽(NOIP)的複賽教材及ACM國際大學比賽。

圖書目錄

第1部分 語言篇

純碎介紹語言,幾乎不涉及算法,但逐步引入一些工程性的東西,如測試、斷言、偽代碼和疊代開發等。

第1章 程式設計入門1

1.1 算術表達式

1.2變數及其輸入

1.3順序結構程式設計

1.4分支結構程式設計

1.5 小結與習題

第2章循環結構程式設計16

2.1for循環

2.2循環結構程式設計

2.3檔案操作

2.4小結與習題

第3章 數組和字元串33

3.1 數組

3.2 字元數組

3.3 最長回文子串

3.4 小結與習題

第4章 函式和遞歸51

4.1 數學函式

4.2 地址和指針

4.3 遞歸

4.4 小結與習題

第2部分 算法篇

在介紹算法的同時繼續強化語言,補充了第1部分沒有涉及的語言特性,如位運算、動態記憶體管理等,並延續第一部分的風格,在需要時引入更多的思想和技巧。學習完前兩部分的讀者應當可以完成相當數量的練習題。

第5章 基礎題目選解69

5.1字元串

5.2 高精度運算

5.3排序與檢索

5.4 數學基礎

5.5 訓練參考

第6章 數據結構基礎89

6.1棧和佇列

6.2鍊表

6.3二叉樹

6.4 圖

6.5 訓練參考

第7章 暴力求解法114

7.1 簡單枚舉

7.2枚舉排列

7.3子集生成

7.4 回溯法

7.5 隱式圖搜尋

7.6 訓練參考

第8章 高效算法設計138

8.1 算法分析初步

8.2 再談排序與檢索

8.3遞歸與分治

8.4分支

8.5 訓練參考

第3部分 競賽篇

涉及競賽中常用的其他知識點和技巧。和前兩部分相比,第3部分涉及的內容更加廣泛,其中還包括一些難以理解的“學術內容”,但其實這些才是算法的精髓。

第9章 動態規劃初步158

9.1 數字三角形

9.2DAG上的動態規劃

9.3 0-1背包問題

9.4 遞歸結構中的動態規劃

9.5 集合上的動態規劃

9.6 訓練參考

第10章 數學概念與方法176

10.1數論初步

10.2排列與組合

10.3遞推關係

10.4 訓練參考

第11章 圖論模型與算法196

11.1 再談樹

11.2 最短路問題

11.3網路流初步

11.4 進一步學習的參考

11.5 訓練參考

附錄

介紹開發環境和開發方法,雖然它們和語言、算法的關係都不大,卻往往能極大地影響選手的成績。

作者簡介

劉汝佳 劉汝佳

劉汝佳,1982年12月生,高中畢業於重慶市外國語學校。

2000年3月獲得NOI2000全國青少年信息學奧林匹克競賽一等獎第四名,進入國家集訓隊,並因此保送到清華大學計算機科學與技術系。大一時獲2001年ACM/ICPC國際大學生程式設計競賽亞洲一上海賽區冠軍和2002年世界總決賽銀牌(世界第四),2005年獲學士學位,2008年獲碩士學位。

相關詞條

相關搜尋

熱門詞條

聯絡我們