48課搞定信息學奧賽:C++趣味編程

李超(@bigbigli)

  • 出版商: 人民郵電
  • 出版日期: 2025-09-01
  • 售價: $599
  • 語言: 簡體中文
  • 頁數: 336
  • ISBN: 7115679118
  • ISBN-13: 9787115679116
  • 相關分類: C++ 程式語言
  • 下單後立即進貨 (約4週~6週)

  • 48課搞定信息學奧賽:C++趣味編程-preview-1
  • 48課搞定信息學奧賽:C++趣味編程-preview-2
48課搞定信息學奧賽:C++趣味編程-preview-1

相關主題

商品描述

本書是一本專為CSP-J/S參賽選手打造的備賽指南,旨在幫助讀者從零基礎起步,系統掌握C++編程語言和競賽算法,最終具備沖擊信息學奧賽獎項的能力。全書內容編排科學合理,由淺入深,從最基礎的 C++語法(如變量、數據類型、運算符、流程控制)講起,逐步過渡到數組、字符串、排序算法等核心知識,再深入講解枚舉、遞推、遞歸、二分查找等基礎算法,並重點剖析貪心算法、深度優先搜索(DFS)、廣度優先搜索(BFS)、動態規劃(DP)等競賽高頻考點,最後系統介紹棧、隊列、鏈表、樹、圖等數據結構及其應用。

本書適合8歲以上對信息學奧賽或C++感興趣的中小學生,也適合從事信息學奧賽教學的教師,或作為線下培訓機構的教材。

作者簡介

本書作者7年信息學教學教研經驗,僅2024年所帶信奧CSP-J集訓學員就達到4000余名,全國TOP。所錄制的“信息學奧賽”系列教學視頻在B站總播放達到30萬+,深受好評。 B站萬粉UP主、公眾號萬粉博主。

目錄大綱

第 1 章 順序結構 1

11 程序入門 1

111 C++簡介 1

112 軟件使用 2

113 標準輸出語句 5

114 實例講解 6

12 初識變量 10

121 什麼是變量 10

122 變量的定義 10

123 變量的賦值 11

124 變量的輸出 12

125 標準輸入 12

126 實例講解 13

13 實數類型 16

131 實數類型的相關操作 17

132 實例講解一 17

133 格式化輸出 18

134 實例講解二 20

14 除法和求余 22

141 整數除法 22

142 浮點數除法 23

143 實例講解一 24

144 余數的定義及註意事項 25

145 實例講解二 27

15 強制類型轉換 29

151 整型轉換成浮點型 29

152 實例講解一 30

153 浮點型轉換成整型 32

154 實例講解二 32

16 字符類型與ASCII 碼 34

161 ASCII 碼 34

162 字符類型 35

163 字符轉換成ASCII 碼 36

164 ASCII 碼轉換成字符 37

165 字符的算術運算 38

166 大小寫字母轉換 39

17 順序結構及復合運算 40

171 順序結構總結 40

172 變量的連續賦值 41

173 實例講解一 42

174 變量的自增自減 42

175 復合運算符 43

176 實例講解二 44

177 交換兩個變量的值 44

第 2 章 選擇結構 46

21 單分支結構 46

211 條件表達式和關系運算符 47

212 奇偶數問題 48

213 位數判斷 49

214 打折問題 50

22 雙分支結構 51

221 實例講解 52

222 邏輯運算符 53

223 字母大小寫判斷 55

23 選擇嵌套結構 56

231 選擇嵌套框架 56

232 實例講解一 57

233 三角形的成立條件 59

234 實例講解二 59

24 多分支結構 62

241 多分支結構的基本框架 63

242 實例講解 64

243 不同三角形判斷 65

244 運算符優先級 66

25 switch 結構 68

251 switch 語句的基本框架 68

252 switch 語句的執行過程 69

253 實例講解 70

第3 章 循環結構 75

31 for 循環 75

311 程序執行的順序 76

312 死循環 77

313 實例講解 77

314 逆序輸出 80

32 循環求和 81

321 循環求和的操作 81

322 實例講解 82

33 循環求積 85

331 循環求積的操作 85

332 實例講解 86

34 while 循環 91

341 while 循環的基本框架 91

342 while 中的死循環 91

343 實例講解 92

35 循環中斷與繼續 96

351 循環中斷break 96

352 實例講解一 97

353 循環繼續continue 98

354 實例講解二 98

36 循環嵌套 100

361 循環嵌套的基本操作 101

362 實例講解 101

第4 章 數組與字符串 107

41 一維數組 107

411 數組的概念及定義 107

412 實例講解 108

42 二維數組 112

421 二維數組的定義與操作 112

422 實例講解一 114

423 矩陣對角線 117

424 實例講解二 118

43 字符串與字符數組 120

431 字符串 121

432 字符數組 122

44 字符數組的基本操作 126

441 輸入和輸出 126

442 實例講解 127

443 復制與比較 129

第5 章 排序算法 134

51 選擇排序 134

511 選擇排序的概念和步驟 134

512 演示及實現 135

513 實例講解 136

52 冒泡排序 138

521 冒泡排序的概念及步驟 138

522 演示及實現 139

523 實例講解 140

524 冒泡排序優化 141

53 插入排序 143

531 插入排序的概念及步驟 143

532 演示及實現 144

533 實例講解 145

54 計數排序 147

541 計數排序的概念及步驟 147

542 演示及實現 147

543 實例講解 148

544 計數排序的去重與計數 149

第6 章 基礎算法 152

61 暴力枚舉 152

611 枚舉的概念與案例實現 152

612 枚舉的優缺點 155

613 實例講解 155

62 遞推算法 158

621 遞推算法的概念 158

622 實例講解 160

63 認識函數 165

631 函數的定義 166

632 形參與實參 167

633 函數的聲明 169

634 函數的值傳遞和引用傳遞 170

635 數組作為函數參數 173

64 結構體及排序 174

641 定義及操作 175

642 實例講解 175

643 結構體成員函數 178

644 結構體排序 181

65 遞歸算法 184

651 遞歸的實例演示 184

652 遞歸的三大要素 185

653 實例講解 185

654 漢諾塔問題 190

66 二分查找 192

661 二分查找的概念 192

662 二分查找的操作 193

663 二分查找的優勢 194

664 實例講解 194

第7 章 數學問題 201

71 因數、公約數和公倍數 201

711 因數及其相關知識 202

712 最大公約數 203

713 輾轉相除法 204

714 最小公倍數 205

72 質數和合數 207

721 質數的概念及判斷 208

722 合數和質因數 211

723 埃拉托斯特尼篩 212

第8 章 模擬算法 215

81 一維數組模擬 215

811 核心考查 215

812 實例講解 215

82 二維數組模擬 223

821 核心考查 223

822 實例講解 223

83 日期模擬 231

831 基礎模板 231

832 實例講解 233

84 字符串模擬 239

841 常見應用場景 239

842 字符串常用函數 239

843 實例講解 240

第9 章 算法進階 246

91 貪心算法 246

911 策略演示 246

912 概念及證明 247

913 實例講解 247

92 深度優先搜索 253

921 情景引入及建模 253

922 深搜模板 256

923 實例講解 257

93 廣度優先搜索 263

931 情景引入及建模 263

932 廣搜模板 268

933 實例講解 269

94 動態規劃 274

941 記憶化搜索 274

942 動態規劃 276

943 實例講解 277

第 10 章 數據結構 283

101 棧及其應用 283

1011 棧的定義、特點和操作 283

1012 STL 中棧的基本使用 285

1013 實例講解 285

102 隊列及其應用 291

1021 隊列的定義和特點 291

1022 數組模擬隊列 292

1023 STL 中隊列的基本使用 296

103 鏈表及其操作 299

1031 單鏈表 299

1032 指針 301

1033 單鏈表的相關操作 302

1034 完整操作 306

104 樹及其應用 309

1041 樹的相關概念 310

1042 二叉樹及其相關概念 311

1043 二叉樹的遍歷 313

1044 二叉樹的建立 315

105 圖及其應用 316

1051 圖的定義及相關概念 316

1052 圖的存儲 318

106 圖的最短路徑 321

1061 Floyd 算法 321

1062 Floyd 算法實例講解 325

1063 Dijkstra 算法 327

1064 Dijkstra 算法實例講解 331

附錄A 信息學奧賽成長指南 335