ACM基础算法入门及题目列表
对于刚进入大学的计算机类同学来说,算法与程序设计竞赛算是不错的选择,因为我们每天都在解决问题,锻炼着解决问题的能力。
这里以TZOJ题目为例,如果为其他平台题目我会标注出来,同时我的主页也欢迎大家去访问,探索新平台去提高自己
ACM竞赛随机性会比较大,所以新手请掌握好基础,基础不牢,地动山摇(大一上)
- C语言题 包括TZOJ1452在内的60道C语言实验题,可以利用OJ的搜索,由于这种题目比较多,就不一一列举
- 暴力枚举 3449 5125 4604 2626
- 递归 1483
- 模拟 1093 3715 3726 3727 4391 1148
- 构造 这种题往往在CF中会遇到 刷题集点这里,就是都是英文题
TZOJ200题以后可以尝试着去刷一些简单的算法(大一上以及大一下)
- 前缀后缀和 1532 4262
- 二分 5629 1597 1041 3044(二分100次)
- 排序(归并排序) 2452
- 贪心 1332 5059 1004 3110 4493
- dfs 2777 4408 4833 3104 3360
- bfs 3533 1335 1748 3031
TZOJ300题以后可以尝试着去刷一些简单的算法和数据结构,要参加天梯赛就得刷会了(大一下以及大二上)
- 并查集
- 最短路(Floyd Dijkstra Bellman-Ford)
- 最小生成树(Kruskal Prim)
- stl的应用
- 拓扑排序
TZOJ500题左右就可以入门算法了,在省赛中往往用得到。这里也非常推荐一个题目集USCAO
- 背包 台州学院基础算法学习之背包
- 容斥
- 图论基础
- 凸包
- 树状数组
- 字典树
- 矩阵快速幂
之后大概每个队伍都要分方向了,建议可以打打CF atcoder Wannafly hiho
队伍中有一个人尝试下51nod 的三级算法题或五级算法题
内容往往不是割裂的,而是组合的
图论方向
- 二分图
- 网络流
- 强连通分量
- 割边和割点
- 树的直径
- LCA(最近公共祖先)
- 差分约束
- 树分块
动态规划方向
- 最长上升(不下降等等)子序列
- 区间DP
- 环形DP
- 状压DP
- 概率DP
- 树形DP
- 单调队列优化DP
数据结构方向
- 线段树
- 莫队
字符串方向
- KMP 2897
- HSAH
- AC自动机
- SA(后缀数组)
- SAM (后缀自动机)
组合数学方向
- 母函数
- 线性求逆元
- 组合数 51nod 1829
- 组合数学上的dp累加
计算几何方向
- 扫描线 Color it
- 线段求交
- 半平面交
- 随机化算法
数论方向
- 费马小定理 3151
- 扩展欧几里得 3343
- 高斯消元 1676 2968
- 欧拉函数 3303
- 莫比乌斯函数
- 积性函数
- FFT(快速傅里叶变换) 5482 Gym - 101667H CodeForces - 528D
- Miller-Rabin 素数检测 2646 4383
- RSA等加密算法 1196
线段求交 5625
计算机网络配置 Gym 100623A
ACM基础算法入门及题目列表的更多相关文章
- 贝叶斯公式由浅入深大讲解—AI基础算法入门
1 贝叶斯方法 长久以来,人们对一件事情发生或不发生的概率,只有固定的0和1,即要么发生,要么不发生,从来不会去考虑某件事情发生的概率有多大,不发生的概率又是多大.而且概率虽然未知,但最起码是一个确定 ...
- 贝叶斯公式由浅入深大讲解—AI基础算法入门【转】
本文转载自:https://www.cnblogs.com/zhoulujun/p/8893393.html 1 贝叶斯方法 长久以来,人们对一件事情发生或不发生的概率,只有固定的0和1,即要么发生, ...
- 强化学习基础算法入门 【PPT】
该部分内容来自于定期的小组讨论,源于师弟的汇报. ==============================================
- java入门学习(3)—循环,选择,基础算法,API概念
1.顺序结构:也就是顺着程序的前后关系,依次执行.2.选择分支:利用if..else , / switch(){case [ 这个必须是常量]:}; / if..else if….. ….else.. ...
- POJ 动态规划题目列表
]POJ 动态规划题目列表 容易: 1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 1189, 1208, 1276, 1322 ...
- dp题目列表
此文转载别人,希望自己能够做完这些题目! 1.POJ动态规划题目列表 容易:1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 11 ...
- poj 动态规划题目列表及总结
此文转载别人,希望自己能够做完这些题目! 1.POJ动态规划题目列表 容易:1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 11 ...
- 循环冗余校验(CRC)算法入门引导
目录 写给嵌入式程序员的循环冗余校验CRC算法入门引导 前言 从奇偶校验说起 累加和校验 初识 CRC 算法 CRC算法的编程实现 前言 CRC校验(循环冗余校验)是数据通讯中最常采用的校验方式.在嵌 ...
- (转)三角函数计算,Cordic 算法入门
由于最近要使用atan2函数,但是时间上消耗比较多,因而网上搜了一下简化的算法. 原帖地址:http://blog.csdn.net/liyuanbhu/article/details/8458769 ...
随机推荐
- mac jdk profile 永久的配置
配置java_home 在MAC中设置JAVA_HOME环境变量 环境变量要再etc目录下的profile文件中配置,这样才是永久的配置. cd /etc vi profile 按 i 键进入写模式 ...
- java设计模式——迭代器模式
一. 定义与类型 定义:提供一种方法,顺序访问一个集合对象中的各个元素,而又不暴露该对象的内部表示 类型:行为型. 二. 使用场景 (1) 访问一个集合对象的内容而无需暴露它的内部表示 (2) 为遍 ...
- js 动态创建标记
innerHTML:一旦使用了这个属性,它的全部内容都要被替换掉.且不会返回任何对刚插入的内容的引用 与document.write()方法一样,innerHTML属性也是HTML专有属性,不能用于任 ...
- HTML第二章:列表,表格,媒体元素
第二章:列表,表格,媒体元素 列表:有三种,有序列表,无序列表,定义列表 1.有序列表:<ol></ol> 列表项:<li></li&g ...
- 在ubuntu中docker的简单使用(一)
>>docker version 当运行docker version 命令出现Cannot connect to Docker daemon. Is the docker daemon r ...
- BootStrap中常用样式类
网格选项 row:行 col--:列(第一个可以为xs[超小]/sm[小型]/md[中型]/lg[大型]:第二个必须为12以内的[列数]) col--offset-:列偏移(第一个同上,第二个范围为1 ...
- hdu_1452_Happy 2004 (乘法逆元
Consider a positive integer X,and let S be the sum of all positive integer divisors of 2004^X. Your ...
- thinkphp5,单图,多图,上传
/** * 上传单图 */ function upload($path, $filename) { $file = request()->file($filename); $info = $fi ...
- Linux入门篇(五)——Shell(一)
这一系列的Linux入门都是本人在<鸟哥的Linux私房菜>的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解 Linux Distribution是Ubuntu而不 ...
- php-5.6.26源代码 - opcode列表
文件 php-5.6.26/Zend/zend_vm_opcodes.h #ifndef ZEND_VM_OPCODES_H #define ZEND_VM_OPCODES_H BEGIN_EXTER ...