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 ...
随机推荐
- 2017.10.14 Java的流程控制语句switch&&随机点名器
今日内容介绍 1.流程控制语句switch 2.数组 3.随机点名器案例 ###01switch语句解构 * A:switch语句解构 * a:switch只能针对某个表达式的值作 ...
- EF问题集合
1. 在使用数据迁移的过程中,如果手工删除了本地数据库之后,再次尝试连接被删除的数据库,会有以下提示: System.Data.SqlClient.SqlException (0x80131904): ...
- C语言中volatile关键字的作用[转]
一.前言 1.编译器优化介绍: 由于内存访问速度远不及CPU处理速度,为提高机器整体性能,在硬件上引入硬件高速缓存Cache,加速对内存的访问.另外在现代CPU中指令的执行并不一定严格按照顺序执行,没 ...
- 安装gcc,g++
安装gcc.g++ sudo apt-get install make gcc g++ 查看g++版本 g++ --version
- IIS 处理程序“PageHandlerFactory-Integrated”
出现这种错误是因为先安装了.net framework 4.0然后才安装了iis,此种情况下iis默认只支持.net framewrok 2.0,要解决此问题,需要在iis中注册.net framew ...
- 【Java】异常 —— throw, throws, try catch 相关内容
嗯……面试考到了这个,又是一个如无意外 那么接下来就总结吧 一.什么是异常 程序运行过程中发生的异常事件. RuntimeException通常是因为编程员因为疏忽没有检查而引起的错误. 二.Exce ...
- map集合修改其中元素 去除Map集合中所有具有相同值的元素 Properties长久保存的流操作 两种用map记录单词或字母个数的方法
package com.swift.lianxi; import java.util.HashMap; import java.util.Iterator; import java.util.Map; ...
- 洛谷P1968 美元汇率
题目背景 此处省略maxint+1个数 题目描述 在以后的若干天里戴维将学习美元与德国马克的汇率.编写程序帮助戴维何时应买或卖马克或美元,使他从100美元开始,最后能获得最高可能的价值. 输入输出格式 ...
- STL 之 set的应用
关于set Set是STL中的一个容器,特点是其中包含的元素值是唯一的,set根据其底层实现机制分为hash存储和红黑树存储两种方式,这两种结构最本质的区别就是有序和无序,红黑树的存储是有序的而has ...
- Anaconda下安装 TensorFlow 和 keras 以及连接pycharm
首先在官网下载Anaconda https://www.anaconda.com/download/ 安装时注意 勾选第一个,增加环境变量 安装好后再windows界面打开Anaconda Promp ...