0基础小白蓝桥杯拿奖攻略

前言

近几年,蓝桥杯越来越为人所识,含金量也越来越高,但很多初学者不知道如何下手,因此博主总结以下步骤供参考。

一、语言基础

1.编程基础:

c、c++、python、java等(推荐优先学习c语言,c语言是基础,在学习其它语言时会发现许多的类似处,不推荐学习python,py是简便的语言,在学习py之后再学习c会发现c有些困难,从而形成懒惰性)。

2、编程语言学习的基本思路

优先看书,弄懂基础知识。再结合网课学习(大一新生若实在不想听线下的科就可以上网课,可以利用线下上课时间来学习,只要能学到知识就行,且网上找到的课程不一定比线下的课程差。)可以通过其它网站学习:菜鸟教程,csdn,力扣等。初学者可以多查看大佬的源代码,慢慢模拟思路,最后通过自己解决问题。

二、基础语法(算法基础)

1、时间复杂分析

2、枚举法

3、递归

4、排序:冒泡排序、选择排序、插入排序、快速排序、归并排序、

桶排序(算法提高)

5、进制转换

6、前缀和

7、差分

8、贪心

9、双指针

10、二分

11、倍增

12、构造

13、位运算

三、搜索

DFS:DFS基础、回溯、减纸、记忆化

四、动态规划

1、动态规划基础

线性dp、二维dp、LIS、LCS

2、背包问题

01背包、完全背包、多重背包、高级背包问题:二维费用背包/分组背包

单调对优化

3、树形dp

自上而下属性dp、至下而上树形dp、路径相关树形dp、换跟dp

4、区间dp

5、状压dp

6、数位dp

五、数学

(即使数学不好也是可以学编程语言的,不用过多担心)

1、线性代数与矩阵运算

矩阵基本运算(矩阵乘法),高斯消元,行列式

2、数论

整除/同于基本概念、GCD/LCM\朴素判定、埃氏筛法唯一分解定理、约数定理(个数、和)、快速幂、逆元/降幂基本该年与停用场景、费马小定理、欧拉函数、欧拉降幂

(算法提高)欧拉线性筛法、斐蜀定理与EXGCD

3、组合数学

技术原理、组合问题分类、选排列、原排列

(算法提高)错排列、组合数计算与组合恒等式、集合与朴素容斥

六、数据结构

1、基础数据

链表、栈、排列、堆、ST表、路径压缩

(算法提高)可撤销并查集

(算法进阶)带权并查集

2、基础的树上问题

数的基本概念、数的遍历、数的直径和中心、LCA

(算法提高)树上差分、DFS序、数链部分

3、数形数据结构:树状数组基础

二维树状数组

树状数组上二分、动态开点、标记永久化、线段树的信息合并、线段树维护矩阵乘法、线段树维护哈希、可持久化线段树、线段树与扫描线、01- Trie 、 Splay 、 FHQ - Treap (算法提高)

4、单数据结构

单调栈、单调队列

5、分块

整数划分分块、数论分块、 STL 的简单实现、普通莫队

七、图论

1、图的基础

图的基本概念、 DFS 、 BFS 

2、拓扑排序

基础拓扑排序

3、最短路

Floyd 、 Dijkstra 、 johnson 最短路
4、生成树

Kruskal 、 Prim

八、计算几何

二维计算几何基础

基础(点的距离、圆的周长和面积等)
点积和叉积、点和线的关系、线和线的关系、任意多边形面积计算(算法提高)

总结

算法的学习应该贯彻到整个学习过程中,不能急于求成,应在刷题中不断总结,

每个算法都是在算题中不段总结,完整,最终熟悉。

此文章参考15届蓝桥杯杯赛公开课回放

  • 18
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
计算机基础是计算机科学的核心知识,对于计算机基础小白来说,以下是一些建议和学习方法: 1. 了解计算机的基本组成部分:学习计算机的硬件和软件组成,包括中央处理器(CPU)、内存、硬盘、操作系统等。 2. 学习计算机的工作原理:了解计算机是如何执行指令、存储数据和进行运算的。学习汇编语言可以更好地理解计算机的底层运行机制。 3. 学习编程语言:选择一门编程语言作为入门,例如Python、Java或C++。通过编程实践来加深对计算机基础知识的理解。 4. 学习数据结构算法数据结构算法是计算机科学的基础,掌握它们可以提高编程能力和解决问题的能力。 5. 阅读相关书籍和教程:有很多经典的计算机基础教材和在线教程可供学习,例如《计算机组成与设计》、《算法导论》等。 6. 参加在线课程或培训班:有很多在线平台提供计算机基础的课程,例如Coursera、edX等。参加这些课程可以系统地学习计算机基础知识。 7. 实践项目:通过实践项目来应用所学的知识,例如编写一个简单的程序或解决一个实际问题。实践可以帮助巩固所学的知识并提高技能。 8. 参与计算机科学社区:加入计算机科学的社区,与其他人交流和分享经验。参与讨论和解答问题可以加深对计算机基础知识的理解。 9. 持续学习和实践:计算机基础知识是庞大而不断发展的领域,要保持学习的动力和实践的机会,跟上技术的发展和变化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值