计算机
类型
可以朗读
语音朗读
528千字
字数
2023-01-01
发行日期
展开全部
主编推荐语
面向蓝桥杯大赛,训练编程思维,掌握解题技巧,涵盖数据结构、算法等知识点。
内容简介
本书面向蓝桥杯软件类大赛,从数据结构和算法的维度帮助广大读者训练编程思维和计算思维,掌握编程方法和解题技巧。本书共10章,第1章主要介绍了蓝桥杯软件类大赛的基本情况,归类汇总了其涉及的知识点(包括算法知识点),详细介绍了其在线判题系统以说明评分情况。第2~10章则由浅入深、由易到难地介绍了各类知识点,包括手算题和杂题、基本数据结构、基本算法、搜索、高级数据结构、动态规划、数学、字符串、图论等,对于每一类知识点都能简明扼要地进行说明,并以真题作为例题进行细致地讲解,以更好地帮助读者实现学用结合的学习效果。需要特别说明的是,本书例题的代码部分,分别由C++、Python、Java三种语言来实现(书中仅提供以C++、Python语言编写的代码,以Java语言编写的代码可从本书的配套数字资源中获取)。
目录
- 版权信息
- 版 权
- 内容提要
- 写在前面的话
- 资源与支持
- 第1章 蓝桥杯软件类大赛介绍
- 1.1 蓝桥杯软件类大赛的竞赛规则
- 1.2 竞赛题示例
- 1.3 算法知识点总览
- 1.4 历年真题知识点统计
- 1.5 蓝桥杯软件类大赛的评测系统
- 小结
- 第2章 手算题和杂题
- 2.1 手算题攻略
- 2.1.1 巧用编辑器
- 2.1.2 眼看手数
- 2.1.3 巧用Excel
- 2.1.4 巧用Python
- 2.2 杂题
- 小结
- 第3章 基础数据结构
- 3.1 数组
- 3.2 链表
- 3.2.1 C++链表实现
- 3.2.2 Python链表实现
- 3.3 队列
- 3.3.1 C++普通队列
- 3.3.2 Python普通队列
- 3.3.3 C++优先队列
- 3.3.4 Python优先队列
- 3.4 栈
- 3.4.1 C++栈的实现
- 3.4.2 Python栈的实现
- 3.4.3 例题
- 3.5 二叉树
- 3.5.1 二叉树的定义
- 3.5.2 二叉树的存储
- 3.5.3 二叉树的遍历
- 3.5.4 例题
- 小结
- 第4章 基本算法
- 4.1 算法复杂度
- 4.1.1 算法的概念
- 4.1.2 计算资源
- 4.1.3 选择解题方法
- 4.1.4 算法复杂度概述
- 4.2 排序
- 4.2.1 C++的sort()函数
- 4.2.2 Python的sort()和sorted()函数
- 4.2.3 Java的sort()函数
- 4.2.4 例题
- 4.3 排列和组合
- 4.3.1 C++的全排列函数next_permutation()
- 4.3.2 Python的排列函数permutations()
- 4.3.3 Python的组合函数combinations()
- 4.3.4 手写排列和组合代码
- 4.3.5 例题
- 4.4 尺取法
- 4.4.1 尺取法的概念
- 4.4.2 反向扫描
- 4.4.3 同向扫描
- 4.5 二分法
- 4.5.1 二分法的概念
- 4.5.2 整数二分
- 4.5.3 整数二分例题
- 4.5.4 实数二分
- 4.6 倍增法和ST算法
- 4.6.1 用暴力法解决区间问题
- 4.6.2 ST算法
- 4.6.3 ST算法的模板代码
- 4.7 前缀和
- 4.8 贪心算法
- 小结
- 第5章 搜索
- 5.1 DFS基础
- 5.1.1 递归和记忆化搜索
- 5.1.2 DFS的代码框架
- 5.1.3 DFS的所有路径
- 5.1.4 DFS与排列组合
- 5.1.5 DFS应用详解
- 5.1.6 DFS真题
- 5.2 BFS基础
- 5.2.1 BFS的原理
- 5.2.2 BFS与最短路径
- 5.3 连通性判断
- 5.3.1 DFS连通性判断
- 5.3.2 BFS连通性判断
- 5.3.3 连通性例题
- 5.4 BFS与判重
- 5.5 双向广搜
- 5.6 剪枝
- 小结
- 第6章 高级数据结构
- 6.1 并查集
- 6.1.1 用并查集检查连通性
- 6.1.2 并查集的基本操作
- 6.1.3 路径压缩
- 6.1.4 例题
- 6.2 树状数组
- 6.2.1 区间和问题
- 6.2.2 树状数组的原理
- 6.2.3 lowbit()
- 6.2.4 树状数组的代码
- 6.2.5 逆序对问题
- 6.3 线段树
- 6.3.1 线段树的概念
- 6.3.2 区间查询
- 6.3.3 区间查询例题
- 6.3.4 区间修改和懒惰标记
- 小结
- 第7章 动态规划
- 7.1 动态规划的概念
- 7.2 动态规划基础
- 7.3 线性DP
- 7.4 状态压缩DP
- 7.4.1 状态压缩DP的概念
- 7.4.2 状态压缩DP的原理
- 7.4.3 位运算
- 7.4.4 例题
- 7.5 树形DP
- 7.6 数位DP
- 小结
- 第8章 数学
- 8.1 模运算
- 8.2 快速幂
- 8.3 矩阵乘法
- 8.4 矩阵快速幂
- 8.5 GCD和LCM
- 8.5.1 GCD的定义和性质
- 8.5.2 GCD的编程实现
- 8.5.3 LCM
- 8.5.4 例题
- 8.6 素数
- 8.6.1 素数的判断
- 8.6.2 素数的筛选
- 8.6.3 区间素数
- 8.6.4 分解质因子
- 8.7 组合数学
- 8.7.1 基本计数
- 8.7.2 鸽巢原理
- 8.7.3 二项式定理和杨辉三角
- 8.8 几何
- 8.8.1 普通几何题
- 8.8.2 点和向量
- 8.8.3 点积和叉积
- 8.8.4 点和线的关系
- 小结
- 第9章 字符串
- 9.1 字符串函数
- 9.1.1 C++的字符串函数
- 9.1.2 Python的字符串处理
- 9.1.3 Java的字符串函数
- 9.2 简单字符串例题
- 9.3 朴素模式匹配算法
- 9.4 KMP算法
- 9.4.1 模式串P的特征与匹配的关系
- 9.4.2 最长公共前后缀和Next[]数组
- 9.4.3 例题
- 小结
- 第10章 图论
- 10.1 图的基本概念
- 10.2 图的存储
- 10.3 拓扑排序
- 10.4 Floyd算法
- 10.4.1 Floyd算法思想
- 10.4.2 例题
- 10.5 Dijkstra算法
- 10.5.1 Dijkstra算法思想
- 10.5.2 编程实现Dijkstra算法
- 10.5.3 例题
- 10.6 Bellman-Ford算法
- 10.7 SPFA
- 10.7.1 SPFA原理
- 10.7.2 SPFA的模板代码
- 10.8 最小生成树
- 10.8.1 Prim算法
- 10.8.2 Kruskal算法
- 小结
展开全部
出版方
人民邮电出版社
人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。