本書由具有豐富編程競賽經驗的作者執(zhí)筆撰寫,榮獲日本2021年IT工程師圖書特別大獎。作為一本算法和數據結構的入門書,本書內容充實、深入淺出,包含了來自知名編程競賽平臺AtCoder的豐富例題和大量配以詳細注釋的C 代碼片段,不僅系統(tǒng)講解了常見的各類算法,而且還通過圖解、代碼和思考題的方式,致力提高讀者的算法實踐能力和問題解決能力。因此這既是一本入門書,能夠激發(fā)初學者對算法的興趣,又是一本注重實踐的書,讓想成為算法高手的讀者可以在深入理解算法和數據結構的基礎上,快速掌握編程思維,終身受用。
本書既適合初學算法的讀者,也適合希望深入掌握各類實用算法設計技術的讀者閱讀和參考。
生動圖解,化繁為簡,讓抽象概念一目了然;
實例豐富,深入淺出,讓學習過程輕松有趣;
實戰(zhàn)演練,學以致用,算法設計技能突飛猛進;
覆蓋全面,系統(tǒng)性強,算法與數據結構盡在掌握。
大槻兼資:1988年出生。2014年畢業(yè)于東京大學大學院信息理工學系研究科,獲得信息理工學碩士學位。目前,他在NTT數據數理系統(tǒng)股份有限公司工作。他在Software Design雜志上連載用拼圖鍛煉算法能力系列文章。此外,他還在Qiita等平臺上進行關于算法主題的普及活動。大槻兼資目前仍然將競技編程作為一種愛好參與其中。
第1章 算法概述
第2章 計算復雜度和大 O 記法
第3章 設計技巧(1):窮舉搜索
第4章 設計技巧(2):遞歸和分治法
第5章 設計技巧(3):動態(tài)規(guī)劃
第6章 設計技巧(4):二分搜索
第7章 設計技巧(5):貪婪法
第8章 數據結構(1):數組、鏈表、哈希表
第9章 數據結構(2):棧和隊列
第10章 數據結構(3):圖與樹
第11章 數據結構(4):并查集
第12章 排序
第13章 圖(1):圖搜索
第14章 圖(2):最短路徑問題
第15章 圖(3):最小生成樹問題
第16章 圖(4):網絡流
第17章 P 與 NP 問題
第18章 難題應對策略
后 記