《蓝桥杯算法入门》(C/C++、Java、Python三个版本)24年10月出版
推荐:《算法竞赛》,算法竞赛大全书,网购:京东 天猫 当当
文章目录
- 《蓝桥杯算法入门》内容简介
- 本书读者对象
- 作者简介
- 联系与交流
- 《蓝桥杯算法入门 C/C++》版目录
- 《蓝桥杯算法入门 Java》版目录
- 《蓝桥杯算法入门 Python》版目录
《蓝桥杯算法入门》内容简介
本书是蓝桥杯大赛软件类的入门教程(C/C++、Java、Python;研究生组、大学A组、大学B组、大学C组)。对入门阶段涉及到的算法、数据结构进行了详尽的理论解析;用大量真题帮助读者巩固知识点的应用;代码简洁精要可作为比赛模板;文字明快清晰,实现了较好的易读性。
本书详解了蓝桥杯软件赛入门阶段的必考、核心知识点:填空题、模拟题、数据结构、基本算法、搜索、动态规划、数学、图论。
对应蓝桥杯大赛软件类的三种语言,本书分三个版本出版:
《蓝桥杯算法入门C/C++》,2024.10.15网售
《蓝桥杯算法入门Java》,2024.10.25网售
《蓝桥杯算法入门Python》,2024.10.25网售
目前出版的算法竞赛书籍,绝大部分是用C/C++语言写的,极少有其他语言的版本。本书的Java和Python版本,填补了这一空白。
本书读者对象
这是一本“算法入门”书,写给“正在学或刚学过编程语言,但是数据结构、算法零基础”的初学者。适合蓝桥杯大赛软件类研究生组、大学A组、大学B组、大学C组的备赛学习。
本书的读者符合这样的画像:刚学过编程语言,C/C++、Java、Python这三种语言任何一个都行;有基本的编码能力,语法比较熟悉;编过一些代码,但仍然不熟练;不懂数据结构和算法,遇到较难的问题没有思路。
这位勤奋的读者有以下目标:
(1)数据结构和算法入门,建立计算思维。
(2)大量编码,提高编码能力。
(3)参加蓝桥杯大赛并获奖。
如果读者准备参加蓝桥杯全国软件和信息技术专业人才大赛(软件类),看这本书正合适,因为题目大多是蓝桥杯大赛软件类的真题,并且按照蓝桥杯大赛的要求进行了详细的解析。
本书也适合用于准备其他算法竞赛,因为所有的算法竞赛的考点都是相通的。例如全国青少年信息学奥林匹克竞赛(NOI)、国际大学生程序设计竞赛(ICPC)、中国大学生程序设计竞赛(CCPC)、中国高校计算机大赛-团体程序设计天梯赛等。
用一句话概括本书的作用:通过本教材学习,帮助读者从一名蓝桥杯、算法竞赛的小白,到掌握算法知识、建立算法思维、提高代码能力,开始成长为一名专业的计算机编程人才。
作者简介
本书的两位作者罗勇军、杨建国,都是华东理工大学的算法竞赛教练,十多年来一直指导学生参加世界大学生程序设计竞赛ICPC、中国大学生程序设计竞赛CCPC、蓝桥杯大赛,成绩优异,曾两次带队参加ICPC世界总决赛。
本书作者罗勇军曾经出版过《算法竞赛入门到进阶》、《算法竞赛》、《程序设计竞赛专题挑战教程》三本算法竞赛教材,读者可作为参考。
《算法竞赛入门到进阶》:精选了经典的初、中级知识点,适合用于算法课程的教学。
《算法竞赛》:算法大全,覆盖了初、中、高级算法知识点,对每个知识点都提供了详尽的理论说明、经典题解析、模板代码,可伴随整个算法竞赛的学习过程,这本书得到很多读者的喜爱,《蓝桥杯算法入门》中介绍的知识点在这本书中有更详细的解释。
《程序设计竞赛专题挑战教程》:蓝桥杯大赛官方备赛书,介绍了常见的蓝桥杯初、中级知识点。
与这三本书相比,《蓝桥杯算法入门》更适合算法零基础的参赛者阅读,更适合入门,是一本真正的入门书。
联系与交流
联系作者罗勇军,加微信:13916333036。
算法竞赛QQ交流群:1群 930175362、2群 649382035、3群929486294、4群574382408、5群865755570。
《蓝桥杯算法入门 C/C++》版目录
第1章 蓝桥杯大赛软件类概述
1.1 蓝桥杯软件赛参赛规则
1.2 蓝桥杯软件赛题型介绍
1.3 蓝桥杯软件赛判题
1.4 蓝桥杯软件赛知识点
1.5 备赛计划
第2章 杂题和填空题
2.1 杂题和编程能力
2.2 输入输出
2.3 杂题例题
2.4 填空题概述
2.5 填空题例题
第3章 数据结构基础
3.1 数组与高精度
3.2 STL概述
3.2.1 String库
3.2.2 迭代器
3.2.3 容器概述
3.2.4 vector
3.2.5 算法函数概述
3.2.6 set和map
3.3 链表
3.4 队列
3.5 优先队列
3.6 栈
3.7 二叉树
3.8 并查集
3.9 扩展学习
第4章 排序和排列
4.1 十大排序算法
4.1.1 选择排序
4.1.2 冒泡排序
4.1.3 插入排序
4.1.4 希尔排序
4.1.5 计数排序
4.1.6 桶排序
4.1.7 基数排序
4.1.8 归并排序
4.1.9 快速排序
4.1.10 堆排序
4.2 排序函数
4.3 排列和组合
第5章 基本算法
5.1 算法复杂度
5.2 前缀和
5.3 差分
5.4 二分
5.5 贪心
5.6 扩展学习
第6章 搜索
6.1 DFS代码框架
6.2 DFS常见应用
6.3 DFS剪枝
6.4 DFS例题
6.5 BFS基本代码
6.6 BFS与最短路径
6.7 BFS判重
6.8 例题
6.9 扩展学习
第7章 数学
7.1 模运算
7.2 快速幂
7.3 素数
7.4 GCD和LCM
7.5 扩展学习
第8章 动态规划
8.1 动态规划概念
8.2 动态规划的两种编码方法
8.3 DP设计基础
8.4 DP背包
8.4.1 0/1背包
8.4.2 完全背包
8.4.3 分组背包
8.4.4 背包相关问题
8.5 DP例题
8.6 扩展学习
第9章 图论
9.1 图的存储
9.2 最短路算法
9.2.1 Floyd
9.2.2 Bellman-ford
9.2.3 Dijkstra
9.3 最小生成树
9.3.1 Prim算法
9.3.2 Kruskal算法
9.4 扩展学习
《蓝桥杯算法入门 Java》版目录
第1章 蓝桥杯大赛软件类概述
1.1 蓝桥杯软件赛参赛规则
1.2 蓝桥杯软件赛题型介绍
1.3 蓝桥杯软件赛判题
1.4 蓝桥杯软件赛知识点
1.5 备赛计划
第2章 杂题和填空题
2.1 杂题和编程能力
2.2 杂题例题
2.3 填空题概述
2.4 填空题例题
第3章 数据结构基础
3.1 Java常用功能
3.1.1 String
3.1.2 BigInteger
3.1.3 日期类
3.1.4 Set和Map
3.2 数组
3.3 链表
3.4 队列
3.5 优先队列
3.6 栈
3.7 二叉树
3.8 并查集
3.9 扩展学习
第4章 排序和排列
4.1 十大排序算法
4.1.1 选择排序
4.1.2 冒泡排序
4.1.3 插入排序
4.1.4 希尔排序
4.1.5 计数排序
4.1.6 桶排序
4.1.7 基数排序
4.1.8 归并排序
4.1.9 快速排序
4.1.10 堆排序
4.2 排序函数
4.3 排列和组合
第5章 基本算法
5.1 算法复杂度
5.2 前缀和
5.3 差分
5.4 二分
5.5 贪心
5.6 扩展学习
第6章 搜索
6.1 DFS代码框架
6.2 DFS常见应用
6.3 DFS剪枝
6.4 DFS例题
6.5 BFS基本代码
6.6 BFS与最短路径
6.7 BFS判重
6.8 例题
6.9 扩展学习
第7章 数学
7.1 模运算
7.2 快速幂
7.3 素数
7.4 GCD和LCM
7.5 扩展学习
第8章 动态规划
8.1 动态规划概念
8.2 动态规划的两种编码方法
8.3 DP设计基础
8.4 DP背包
8.4.1 0/1背包
8.4.2 完全背包
8.4.3 分组背包
8.4.4 背包相关问题
8.5 DP例题
8.6 扩展学习
第9章 图论
9.1 图的存储
9.2 最短路算法
9.2.1 Floyd
9.2.2 Bellman-ford
9.2.3 Dijkstra
9.3 最小生成树
9.3.1 Prim算法
9.3.2 Kruskal算法
9.4 扩展学习
《蓝桥杯算法入门 Python》版目录
第1章 蓝桥杯大赛软件类概述
1.1 蓝桥杯软件赛参赛规则
1.2 蓝桥杯软件赛题型介绍
1.3 蓝桥杯软件赛判题
1.4 蓝桥杯软件赛知识点
1.5 备赛计划
第2章 杂题和填空题
2.1 杂题和编程能力
2.2 杂题例题
2.3 填空题概述
2.4 填空题例题
第3章 Python语言和数据结构基础
3.1 Python常用功能
3.1.1 输入和输出
3.1.2 字符串
3.1.3 日期库
3.1.4 set和字典去重
3.2 列表与数组
3.3 链表
3.4 队列
3.5 优先队列
3.6 栈
3.7 二叉树
3.8 并查集
3.9 扩展学习
第4章 排序和排列
4.1 十大排序算法
4.1.1 选择排序
4.1.2 冒泡排序
4.1.3 插入排序
4.1.4 希尔排序
4.1.5 计数排序
4.1.6 桶排序
4.1.7 基数排序
4.1.8 归并排序
4.1.9 快速排序
4.1.10 堆排序
4.2 排序函数
4.3 排列和组合
第5章 基本算法
5.1 算法复杂度
5.2 前缀和
5.3 差分
5.4 二分
5.5 贪心
5.6 扩展学习
第6章 搜索
6.1 DFS代码框架
6.2 DFS常见应用
6.3 DFS剪枝
6.4 DFS例题
6.5 BFS基本代码
6.6 BFS与最短路径
6.7 BFS判重
6.8 例题
6.9 扩展学习
第7章 数学
7.1 模运算
7.2 快速幂
7.3 素数
7.4 GCD和LCM
7.5 扩展学习
第8章 动态规划
8.1 动态规划概念
8.2 动态规划的两种编码方法
8.3 DP设计基础
8.4 DP背包
8.4.1 0/1背包
8.4.2 完全背包
8.4.3 分组背包
8.4.4 背包相关问题
8.5 DP例题
8.6 扩展学习
第9章 图论
9.1 图的存储
9.2 最短路算法
9.2.1 Floyd
9.2.2 Bellman-ford
9.2.3 Dijkstra
9.3 最小生成树
9.3.1 Prim算法
9.3.2 Kruskal算法
9.4 扩展学习
相关文章:
《蓝桥杯算法入门》(C/C++、Java、Python三个版本)24年10月出版
推荐:《算法竞赛》,算法竞赛大全书,网购:京东 天猫 当当 文章目录 《蓝桥杯算法入门》内容简介本书读者对象作者简介联系与交流《蓝桥杯算法入门 C/C》版目录 《蓝桥杯算法入门 Java》版目录 《蓝桥杯算法入门 Python》版目录 …...
Soar项目中添加一条新的SQL审核规则示例
soar是一个开源的SQL规则审核工具,是一个go语言项目,可以直接编译构建成一个可执行程序,而且是一个命令行工具,我们可以利用archey来调用soar进行sql规则审核以及sql的分析,包括执行计划的查看及sql建议等。 soar中已…...
RISC-V开发 linux下GCC编译自定义指令流程笔记
第一步:利用GCC提供了内嵌汇编的功能可以在C代码中直接内嵌汇编语言 第二步:利用RSIC-V的中的.insn模板进行自定义指令的插入 第三步:RISC-V开发环境的搭建 C语言插入汇编 GCC提供了内嵌汇编的功能可以在C代码中直接内嵌汇编语言语句方便了…...
java代码是如何与数据库通信的?
Java代码与数据库通信的过程主要通过Java Database Connectivity(JDBC)来实现。JDBC是Java与数据库之间的标准接口,提供了用于执行SQL语句和处理数据库结果的API。以下是Java代码与数据库通信的详细步骤: 一、导入JDBC库 在Java…...
gateway--网关
在微服务架构中,Gateway(网关)是一个至关重要的组件,它扮演着多种关键角色,包括路由、负载均衡、安全控制、监控和日志记录等。 Gateway网关的作用 统一访问入口: Gateway作为微服务的统一入口,…...
北京数字孪生工业互联网可视化技术,赋能新型工业化智能制造工厂
随着北京数字孪生工业互联网可视化技术的深入应用,新型工业化智能制造工厂正逐步迈向智能化、高效化的全新阶段。这项技术不仅实现了物理工厂与数字世界的精准映射,更通过大数据分析、人工智能算法等先进手段,为生产流程优化、资源配置合理化…...
土地规划与区域经济发展:筑基均衡未来的战略经纬
在新时代背景下,土地规划不仅是空间布局的艺术,更是推动区域经济均衡发展的关键引擎。土地资源的合理配置对于激发区域潜能、促进经济结构优化有着重要意义。本文将深入剖析土地规划如何成为促进区域经济均衡发展的强大动力。 一、土地规划与区域经济的…...
wsl(2) -- ubuntu24.04配置
1. 常用脚本及别名配置 修改的文件内容参考另一篇文章常用bash脚本。 修改~/.bashrc,在文件末尾追加以下内容。 # Add by user export MYTOOLS$HOME/tools export MYBINS$HOME/bin # 系统中其他地方已经添加过了,暂不清楚是哪里添加的 #export PATH$M…...
python快速搭建https服务器
本文介绍了在ubuntu操作系统上搭建https服务器的过程 在一台连接到网络的主机上搭建https服务器,假设该主机的ip地址为:10.98.69.174 创建证书example.crt和私钥example.key openssl req -newkey rsa:2048 -nodes -keyout example.key -x509 -days 365…...
网络原理3-应用层(HTTP/HTTPS)
目录 DNSHTTP/HTTPSHTTP协议报文HTTP的方法请求报头、响应报头(header)状态码构造HTTP请求HTTPS 应用层是我们日常开发中最常用的一层,因为其他层:传输层、网络层、数据链路层、物理层这些都是操作系统和硬件、驱动已经实现好的,我们只能使用…...
JVM(HotSpot):堆空间(Heap)以及常用相关工具介绍
文章目录 一、内存结构图二、堆的定义三、堆内存溢出四、堆内存排查工具 一、内存结构图 二、堆的定义 1、通过new关键字创建的对象,都会放到堆空间中。 2、它是线程共享的,堆中的对象都要考虑线程安全问题。 那有同学肯定会问,方法内通过n…...
【Python语言初识(六)】
一、网络编程入门 1.1、TCP/IP模型 实现网络通信的基础是网络通信协议,这些协议通常是由互联网工程任务组 (IETF)制定的。所谓“协议”就是通信计算机双方必须共同遵从的一组约定,例如怎样建立连接、怎样互相识别等,…...
使用root账号ssh登录虚拟机ubuntu
在C:\Users\Administrator\.ssh目录下的config中,添加ubuntu会在根目录中,建立一个root文件夹。在该文件夹中建一个.ssh目录。像免密登录ubuntu设置中,把公钥考进去。在vscode中打开文件夹中选择要打开的文件夹,就可以不需要在ubu…...
五子棋双人对战项目(1)——WebSocket介绍
目录 一、项目介绍 如何实现实时同步对局? 二、WebSocket 1、什么是WebSocket? 2、WebSocket的报文格式 opcode payload len payload data 3、WebSocket握手过程 4、WebSocket代码的简单编写 三、WebSocket 和 HTTP的关系 1、相同点…...
rabbitMq------信道管理模块
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言信道管理的字段申明/删除交换机申明/删除队列绑定/解绑消息的发布消息确认订阅队列取消订阅信道内存管理类打开信道关闭信道/获取指定信道 总结 前言 信道是在…...
如何只用 CSS 制作网格?
来源:how-to-make-a-grid-like-graph-paper-grid-with-just-css 在看 用于打印到纸张的 CSS 这篇文章时,对其中的网格比较好奇,作者提供了 stackoverflow 的链接,就看到了来源的这个问题和众多回复。本文从里面挑选了一些个人比较…...
Linux安装RabbitMQ安装
1. RabbitMQ介绍 1.1 RabbitMQ关键特性 异步消息传递:允许应用程序在不直接进行网络调用的情况下交换消息。 可靠性:支持消息持久化,确保消息不会在系统故障时丢失。 灵活的路由:支持多种路由选项,包括直接、主题、…...
SpringBoot驱动的社区医院信息管理平台
1系统概述 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及,互联网成为人们查找信息的重要场所,二十一世纪是信息的时代,所以信息的管理显得特别重要。因此,使用计算机来管理社区医院信息平台的相关信息成为必然。开发…...
MyBatis-Plus如何分页查询?
MyBatis-Plus提供了一种简单而强大的分页查询功能,可以通过使用Page对象和Mapper接口中的方法来实现。以下是分页查询的基本步骤: 添加分页插件依赖 确保你的项目中已经添加了MyBatis-Plus的分页插件依赖。 <dependency><groupId>com.bao…...
云原生之容器编排实践-OpenEuler23.09离线安装Kubernetes与KubeSphere
背景 有互联网的日子确实美好,不过有时候,仅仅是有时候,你可能会面临离线部署 Kubernetes 与 KubeSphere 集群的要求。。 我们借助由青云开源的容器平台, KubeSphere 来进行可视化的服务部署。 KubeSphere 是在 Kubernetes 之上…...
7.4.分块查找
一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...
调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
ardupilot 开发环境eclipse 中import 缺少C++
目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...
Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理
引言 Bitmap(位图)是Android应用内存占用的“头号杀手”。一张1080P(1920x1080)的图片以ARGB_8888格式加载时,内存占用高达8MB(192010804字节)。据统计,超过60%的应用OOM崩溃与Bitm…...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
