挑戰程序設計競賽, 2/e
[日]秋葉拓哉 巖田陽一 北川宜稔 著
- 出版商: 人民郵電
- 出版日期: 2024-09-01
- 售價: $474
- 貴賓價: 9.5 折 $450
- 語言: 簡體中文
- 頁數: 414
- ISBN: 7115320101
- ISBN-13: 9787115320100
-
相關分類:
Algorithms-data-structures、Algorithms-data-structures
立即出貨 (庫存 < 4)
買這商品的人也買了...
-
演算法競賽入門經典, 2/e (演算法藝術與信息學競賽)$479$455 -
$327ACM 國際大學生程序設計競賽題目與解讀 -
算法競賽入門經典 — 習題與解答$539$512 -
$330高效算法 競賽 應試與提高必修128例 -
$187程序基本算法習題解析 -
$214算法設計與分析(第2版) -
$726微服務架構設計模式 (Microservices Patterns: With examples in Java) -
$283算法競賽入門到進階 -
挑戰程序設計競賽2 : 算法和數據結構$474$450 -
Competitive Programming 4 - Book 1 (Paperback)$1,030$1,009 -
算法競賽入門經典 — 訓練指南 (升級版)$708$672 -
$662算法訓練營:海量圖解 + 競賽刷題 (進階篇) -
$568程序設計競賽訓練營 : 基礎與數學概念 -
$445算法 — 數學應用與競賽案例解析 -
鍛鍊問題解決力!演算法與資料結構應用全圖解$650$513 -
AI 獨家解密 - DALL·E、Midjourney、Stable Diffusion Python 打開圖片生成原理潘朵拉盒子$980$774 -
AI 玩出新花樣:解鎖工作、生活與創作靈感的秘密$690$545 -
無瑕的程式碼 函數式設計篇:原則、模式與實踐$780$608 -
軟體設計耦合的平衡之道:建構模組化軟體系統的通用設計原則 (Balancing Coupling in Software Design: Successful Software Architecture in General and Distributed Systems)$650$507 -
深度學習最佳入門與專題實戰:自然語言處理、大型語言模型與強化學習篇$880$695 -
GitHub Copilot 讓你寫程式快 10 倍!AI 程式開發大解放$690$545 -
高手用最強大 Java - Spring Boot + Vue.js + uni-app 全端開發$1,080$853 -
三秒鐘的出其不意!Excel × AI 幫你工作超省力$630$497 -
Raspberry Pi 5 + AI 創新實踐:電腦視覺與人工智慧應用指南$680$476 -
聰明提問 AI 的技巧與實例:ChatGPT、Copilot、AgentGPT、AI 繪圖,一次滿足 (暢銷回饋版)$650$325
簡體書拿來曬2本75折 詳見活動內容 »
-
VIP 95折
編譯原理, 2/e (Compilers : Principles, Techniques, and Tools, 2/e)$534$507 -
VIP 95折
深度學習之 TensorFlow:入門、原理與進階實戰$594$564 -
79折
$374Essential C++ (簡體中文版) -
VIP 95折
TCP/IP 詳解 (捲1):協議 (TCP/IP Illustrated, Volume 1 : The Protocols, 2/e)$774$735 -
79折
$374Go 並發編程實戰, 2/e -
VIP 95折
機器人學導論, 4/e (Introduction to Robotics: Mechanics and Control, 4/e)$474$450 -
79折
$374深入淺出 Vue.js -
79折
$327實用機器學習 (Real-world Machine Learning) -
79折
$469深度探索 C++ 對像模型 (Inside the C++ Object Model) -
79折
$279區塊鏈項目開發指南 -
79折
$374原子教你玩 STM32 (庫函數版第2版) -
79折
$374Spring Security 實戰 -
79折
$568嵌入式 Linux 基礎教程, 2/e (Embedded Linux Primer: A Practical Real-World Approach, 2/e) -
79折
$469MySQL 技術內幕-InnoDB 存儲引擎, 2/e -
79折
$417PADS 9.5 實戰攻略與高速 PCB 設計 -
79折
$227基於 Bootstrap 和 Knockout.js 的 ASP.NET MVC 開發實戰 (ASP.Net MVC 5 with Bootstrap and Knockout.Js: Building Dynamic, Responsive Web Applications) -
79折
$246深入淺出 USB 系統開發 : 基於 ARM Cortex-M3 -
79折
$374Redis 設計與實現 -
VIP 95折
FPGA 原理和結構$354$336 -
VIP 95折
TCP/IP 網絡編程$474$450 -
60折
$356數據分析與機器學習(基於R語言) -
85折
$652深度學習推薦系統 2.0 -
60折
$320移動通信系統架構設計 -
VIP 95折
自動駕駛汽車 BEV 感知算法$528$501 -
50折
$207區塊鏈技術進階與實戰
相關主題
商品描述
《挑戰程序設計競賽(第 2版)》對程序設計競賽中的基礎算法和經典問題進行了匯總,分為準備篇、初級篇、中級篇與高 級篇4章。作者結合自己豐富的參賽經驗,對嚴格篩選的110多道各類試題進行了由淺入深、由易及難的細致講解,並介紹了許多實用技巧。每章後附有習題,供讀者練習,鞏固所學。
《挑戰程序設計競賽(第 2版)》適合程序設計人員、程序設計競賽愛好者以及高校電腦專業師生閱讀。
作者簡介
秋葉拓哉,Google Code Jam 2010第9名;ACM-ICPC World Finals 2012第11名;TopCoder Open 2012 Algorithm第4名,暱稱iwi
巖田陽一,Google Code Jam 2009第3名;TopCoder Open 2010 Marathon冠軍; IPSC 2010個人組冠軍,暱稱wata
北川宜稔,ACM-ICPC World Finals 2010第16名,暱稱kita_masa
巫澤俊,ACM-ICPC World Finals 2009第6名;ACM-ICPC World Finals 2011冠軍;Google Code Jam 2012第7名,暱稱watashi和rejudge
莊俊元,ACM-ICPC Asia Phuket Regional 2011冠軍;2012年躋身ACM-ICPC World Finals以及百度Astar總決賽,暱稱navi和navimoe
李津羽,浙江大學2011級計算機系博士生,在浙大CAD&CG實驗室從事科研工作
目錄大綱
第1章蓄勢待發——準備篇1
1.1何謂程序設計競賽2
1.2最負盛名的程序設計競賽5
1.2.1世界規模的大賽——Google Code Jam (GCJ) 5
1.2.2向高排名看齊!——TopCoder 5
1.2.3歷史最悠久的競賽—— ACM-ICPC 6
1.2.4面向中學生的信息學奧林匹克競賽——JOI-IOI 6
1.2.5通過網絡自動評測——Online Judge(OJ) 6
1.3本書的使用方法7
1.3.1本書所涉及的內容7
1.3.2所用的編程語言7
1.3.3題目描述的處理7
1.3.4程序結構7
1.3.5練習題8
1.3.6讀透本書後更上一層樓的練習方法8
1.4如何提交解答9
1.4.1 POJ的提交方法9
1.4.2 GCJ的提交方法11
1.5以高效的算法為目標15
1.5.1什麼是複雜度15
1.5.2關於運行時間15
1.6輕鬆熱身16
1.6.1先從簡單題開始16
1.6.2 POJ的題目Ants 18
1.6.3難度增加的抽籤問題20
第2章初出茅廬— —初級篇25
2.1最基礎的“窮竭搜索” 26
2.1.1遞歸函數26
2.1.2棧27
2.1.3隊列28
2.1.4深度優先搜索29
2.1.5寬度優先搜索33
2.1.6特殊狀態的枚舉37
2.1.7剪枝38
2.2一往直前!貪心法39
2.2.1硬幣問題39
2.2.2區間問題40
2.2.3字典序最小問題43
2.2.4其他例題45
2.3記錄結果再利用的“動態規劃” 51
2.3.1記憶化搜索與動態規劃51
2.3.2進一步探討遞推關係57
2.3.3有關計數問題的DP 66
2.4加工並存儲數據的數據結構70
2.4.1樹和二叉樹70
2.4.2優先隊列和堆71
2.4.3二叉搜索樹77
2.4.4並查集84
2.5它們其實都是“圖” 91
2.5.1圖是什麼91
2.5.2圖的表示94
2.5.3圖的搜索97
2.5.4最短路問題99
2.5.5最小生成樹105
2.5.6應用問題107
2.6數學問題的解題竅門113
2.6.1輾轉相除法113
2.6.2有關素數的基礎算法117
2.6.3模運算121
2.6.4快速冪運算122
2.7一起來挑戰GCJ的題目(1) 125
2.7.1 Minimum Scalar Product 125
2.7.2 Crazy Rows 127
2.7.3 Bribe the Prisoners 129
2.7. 4 Millionaire 132
第3章出類拔萃——中級篇137
3.1不光是查找值!“二分搜索” 138
3.1.1從有序數組中查找某個值138
3.1.2假定一個解並判斷是否可行140
3.1.3最大化最小值142
3.1.4最大化平均值143
3.2常用技巧精選(一) 146
3.2.1尺取法146
3.2.2反轉(開關問題) 150
3.2.3彈性碰撞158
3.2.4折半枚舉(雙向搜索) 160
3.2.5坐標離散化164
3.3活用各種數據結構167
3.3.1線段樹167
3.3.2 Binary Indexed Tree 174
3.3.3分桶法和平方分割183
3.4熟練掌握動態規劃191
3.4.1狀態壓縮DP 191
3.4.2矩陣的冪199
3.4.3利用數據結構高效求解206
3.5借助水流解決問題的網絡流209
3.5.1最大流209
3.5.2最小割212
3.5.3二分圖匹配217
3.5.4一般圖匹配220
3.5.5匹配、邊覆蓋、獨立集和頂點覆蓋221
3.5.6最小費用流222
3.5.7應用問題228
3.6與平面和空間打交道的計算幾何250
3.6.1計算幾何基礎250
3.6.2極限情況255
3.6.3平面掃描258
3.6.4凸包260
3.6.5數值積分263
3.7一起來挑戰GCJ的題目(2) 267
3.7.1 Numbers 267
3.7.2 No Cheating 269
3.7.3 Stock Charts 271
3.7.4 Watering Plants 273
3.7.5 Number Sets 278
3.7.6 Wi-fi Towers 280
第4章登峰造極— —高級篇285
4.1更加複雜的數學問題286
4.1.1矩陣286
4.1.2模運算的世界291
4.1.3計數295
4.1.4具有對稱性的計數300
4.2找出遊戲的必勝策略305
4.2.1遊戲與必勝策略305
4.2.2 Nim 311
4.2.3 Grundy數315
4.3成為圖論大師之路320
4.3.1強連通分量分解320
4.3.2 2-SAT 324
4.3.3 LCA 328
4.4常用技巧精選(二) 335
4.4.1棧的運用335
4.4.2雙端隊列的運用337
4.4.3倍增法345
4.5開動腦筋智慧搜索350
4.5.1剪枝350
4.5.2 A*與IDA* 356
4.6劃分、解決、合併:分治法359
4.6.1數列上的分治法359
4.6.2樹上的分治法360
4.6.3平面上的分治法364
4.7華麗地處理字符串368
4.7.1字符串上的動態規劃算法368
4.7.2字符串匹配373
4.7.3後綴數組378
4.8一起來挑戰GCJ的題目(3) 387
4.8.1 Mine Layer 387
4.8.2 Year of More Code Jam 392
4.8.3 Football Team 395
4.8.4 Endless Knight 399
4.8.5 The Year of Code Jam 403
本書中未涉及的拓展主題408
書中例題列表411
參考文獻413

