算法競賽入門經典

算法競賽入門經典 pdf epub mobi txt 电子书 下载 2025

劉汝佳
圖書標籤:
想要找书就要到 求知書站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
<div class="indent" id="dir_4138920_full" style="display:none"> 第1部分 语言篇<br/> 第1章 程序设计入门 1<br/> 1.1 算术表达式 1<br/> 1.2 变量及其输入 3<br/> 1.3 顺序结构程序设计 6<br/> 1.4 分支结构程序设计 9<br/> 1.5 小结与习题 13<br/> 1.5.1 数据类型实验 13<br/> 1.5.2 scanf输入格式实验 13<br/> 1.5.3 printf语句输出实验 13<br/> 1.5.4 测测你的实践能力 14<br/> 1.5.5 小结 14<br/> 1.5.6 上机练习 15<br/> 第2章 循环结构程序设计 16<br/> 2.1 for循环 16<br/> 2.2 循环结构程序设计 19<br/> 2.3 文件操作 23<br/> 2.4 小结与习题 27<br/> 2.4.1 输出技巧 28<br/> 2.4.2 浮点数陷阱 28<br/> 2.4.3 64位整数 28<br/> 2.4.4 C++中的输入输出 29<br/> 2.4.5 小结 30<br/> 2.4.6 上机练习 31<br/> 第3章 数组和字符串 33<br/> 3.1 数组 33<br/> 3.2 字符数组 37<br/> 3.3 最长回文子串 41<br/> 3.4 小结与习题 45<br/> 3.4.1 必要的存储量 45<br/> 3.4.2 用ASCII编码表示字符 45<br/> 3.4.3 补码表示法 46<br/> 3.4.4 重新实现库函数 47<br/> 3.4.5 字符串处理的常见问题 47<br/> 3.4.6 关于输入输出 47<br/> 3.4.7 I/O的效率 47<br/> 3.4.8 小结 49<br/> 3.4.9 上机练习 50<br/> 第4章 函数和递归 51<br/> 4.1 数学函数 51<br/> 4.1.1 简单函数的编写 51<br/> 4.1.2 使用结构体的函数 52<br/> 4.1.3 应用举例 53<br/> 4.2 地址和指针 56<br/> 4.2.1 变量交换 56<br/> 4.2.2 调用栈 57<br/> 4.2.3 用指针实现变量交换 59<br/> 4.2.4 初学者易犯的错误 61<br/> 4.3 递归 62<br/> 4.3.1 递归定义 62<br/> 4.3.2 递归函数 63<br/> 4.3.3 C语言对递归的支持 64<br/> 4.3.4 段错误与栈溢出 66<br/> 4.4 本章小结 67<br/> 4.4.1 小问题集锦 67<br/> 4.4.2 小结 68<br/> 第2部分 算法篇<br/> 第5章 基础题目选解 69<br/> 5.1 字符串 69<br/> 5.1.1 WERTYU 69<br/> 5.1.2 TeX括号 70<br/> 5.1.3 周期串 71<br/> 5.2 高精度运算 71<br/> 5.2.1 小学生算术 72<br/> 5.2.2 阶乘的精确值 72<br/> 5.2.3 高精度运算类bign 73<br/> 5.2.4 重载bign的常用运算符 75<br/> 5.3 排序与检索 77<br/> 5.3.1 6174问题 77<br/> 5.3.2 字母重排 78<br/> 5.4 数学基础 81<br/> 5.4.1 Cantor的数表 81<br/> 5.4.2 因子和阶乘 82<br/> 5.4.3 果园里的树 84<br/> 5.4.4 多少块土地 86<br/> 5.5 训练参考 86<br/> 5.5.1 黑盒测试 86<br/> 5.5.2 在线评测系统 87<br/> 5.5.3 推荐题目 88<br/> 第6章 数据结构基础 89<br/> 6.1 栈和队列 89<br/> 6.1.1 卡片游戏 89<br/> 6.1.2 铁轨 91<br/> 6.2 链表 93<br/> 6.2.1 初步分析 93<br/> 6.2.2 链式结构 95<br/> 6.2.3 对比测试 96<br/> 6.2.4 随机数发生器 98<br/> 6.3 二叉树 99<br/> 6.3.1 小球下落 99<br/> 6.3.2 层次遍历 101<br/> 6.3.3 二叉树重建 105<br/> 6.4 图 106<br/> 6.4.1 黑白图像 107<br/> 6.4.2 走迷宫 108<br/> 6.4.3 拓扑排序 110<br/> 6.4.4 欧拉回路 111<br/> 6.5 训练参考 112<br/> 第7章 暴力求解法 114<br/> 7.1 简单枚举 114<br/> 7.1.1 除法 114<br/> 7.1.2 最大乘积 115<br/> 7.1.3 分数拆分 115<br/> 7.1.4 双基回文数 116<br/> 7.2 枚举排列 116<br/> 7.2.1 生成1~n的排列 116<br/> 7.2.2 生成可重集的排列 118<br/> 7.2.3 解答树 118<br/> 7.2.4 下一个排列 119<br/> 7.3 子集生成 120<br/> 7.3.1 增量构造法 120<br/> 7.3.2 位向量法 121<br/> 7.3.3 二进制法 122<br/> 7.4 回溯法 123<br/> 7.4.1 八皇后问题 123<br/> 7.4.2 素数环 126<br/> 7.4.3 困难的串 127<br/> 7.4.4 带宽 128<br/> 7.5 隐式图搜索 129<br/> 7.5.1 隐式树的遍历 129<br/> 7.5.2 一般隐式图的遍历 130<br/> 7.5.3 八数码问题 131<br/> 7.5.4 结点查找表 133<br/> 7.6 训练参考 136<br/> 第8章 高效算法设计 138<br/> 8.1 算法分析初步 138<br/> 8.1.1 渐进时间复杂度 138<br/> 8.1.2 上界分析 140<br/> 8.1.3 分治法 140<br/> 8.1.4 正确对待算法分析结果 142<br/> 8.2 再谈排序与检索 143<br/> 8.2.1 归并排序 143<br/> 8.2.2 快速排序 145<br/> 8.2.3 二分查找 145<br/> 8.3 递归与分治 148<br/> 8.3.1 棋盘覆盖问题 148<br/> 8.3.2 循环日程表问题 149<br/> 8.3.3 巨人与鬼 149<br/> 8.3.4 非线性方程求根 150<br/> 8.3.5 最大值最小化 151<br/> 8.4 贪心法 151<br/> 8.4.1 最优装载问题 151<br/> 8.4.2 部分背包问题 152<br/> 8.4.3 乘船问题 152<br/> 8.4.4 选择不相交区间 152<br/> 8.4.5 区间选点问题 153<br/> 8.4.6 区间覆盖问题 154<br/> 8.4.7 Huffman编码 154<br/> 8.5 训练参考 156<br/> 第3部分 竞赛篇<br/> 第9章 动态规划初步 158<br/> 9.1 数字三角形 158<br/> 9.1.1 问题描述与状态定义 158<br/> 9.1.2 记忆化搜索与递推 159<br/> 9.2 DAG上的动态规划 161<br/> 9.2.1 DAG模型 161<br/> 9.2.2 最长路及其字典序 162<br/> 9.2.3 固定终点的最长路和最短路 163<br/> 9.3 0-1背包问题 167<br/> 9.3.1 多阶段决策问题 167<br/> 9.3.2 规划方向 168<br/> 9.3.3 滚动数组 169<br/> 9.4 递归结构中的动态规划 170<br/> 9.4.1 表达式上的动态规划 170<br/> 9.4.2 凸多边形上的动态规划 171<br/> 9.4.3 树上的动态规划 171<br/> 9.5 集合上的动态规划 172<br/> 9.5.1 状态及其转移 173<br/> 9.5.2 隐含的阶段 173<br/> 9.6 训练参考 174<br/> 第10章 数学概念与方法 176<br/> 10.1 数论初步 176<br/> 10.1.1 除法表达式 176<br/> 10.1.2 无平方因子的数 178<br/> 10.1.3 直线上的点 179<br/> 10.1.4 同余与模算术 180<br/> 10.2 排列与组合 182<br/> 10.2.1 杨辉三角与二项式定理 182<br/> 10.2.2 数论中的计数问题 184<br/> 10.2.3 编码与解码 186<br/> 10.2.4 离散概率初步 187<br/> 10.3 递推关系 188<br/> 10.3.1 汉诺塔 188<br/> 10.3.2 Fibonacci数列 189<br/> 10.3.3 Catalan数 191<br/> 10.3.4 危险的组合 192<br/> 10.3.5 统计n-k特殊集的数目 193<br/> 10.4 训练参考 194<br/> 第11章 图论模型与算法 196<br/> 11.1 再谈树 196<br/> 11.1.1 无根树转有根树 196<br/> 11.1.2 表达式树 197<br/> 11.1.3 最小生成树 199<br/> 11.1.4 并查集 200<br/> 11.2 最短路问题 201<br/> 11.2.1 Dijkstra算法 202<br/> 11.2.2 稀疏图的邻接表 203<br/> 11.2.3 使用优先队列的Dijkstra算法 204<br/> 11.2.4 Bellman-Ford算法 205<br/> 11.2.5 Floyd算法 206<br/> 11.3 网络流初步 207<br/> 11.3.1 最大流问题 207<br/> 11.3.2 增广路算法 208<br/> 11.3.3 最小割最大流定理 210<br/> 11.3.4 最小费用最大流问题 211<br/> 11.4 进一步学习的参考 212<br/> 11.4.1 编程语言 213<br/> 11.4.2 数据结构 213<br/> 11.4.3 算法设计 213<br/> 11.4.4 数学 214<br/> 11.4.5 参赛指南 214<br/> 11.5 训练参考 215<br/> 附录A 开发环境与方法 216<br/> A.1 命令行 216<br/> A.1.1 文件系统 216<br/> A.1.2 进程 217<br/> A.1.3 程序的执行 217<br/> A.1.4 重定向和管道 218<br/> A.1.5 常见命令 218<br/> A.2 操作系统脚本编程入门 219<br/> A.2.1 Windows下的批处理 219<br/> A.2.2 Linux下的Bash脚本 220<br/> A.2.3 再谈随机数 221<br/> A.3 编译器和调试器 221<br/> A.3.1 gcc的安装和测试 221<br/> A.3.2 常见编译选项 222<br/> A.3.3 gdb简介 223<br/> A.3.4 gdb的高级功能 224<br/> A.4 浅谈IDE 225<br/> · · · · · · (<a href="javascript:$('#dir_4138920_full').hide();$('#dir_4138920_short').show();void(0);">收起</a>) </div>

具体描述

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

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

用户评价

评分

##电子版也有

评分

##高手写的算法书,即使是标注“入门”,也很少有真正简单易懂的。这一本绝对是其中之一。好书。

评分

##讲的挺好。。虽然太简单了

评分

评分

##当初只看个开头,很入门,应该不会再看了

评分

评分

评分

##为了比赛,技巧书。

评分

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 tushu.tinynews.org All Rights Reserved. 求知書站 版权所有