对于刚进入大学的计算机类同学来说,算法与程序设计竞赛算是不错的选择,因为我们每天都在解决问题,锻炼着解决问题的能力。

这里以TZOJ题目为例,如果为其他平台题目我会标注出来,同时我的主页也欢迎大家去访问,探索新平台去提高自己

ACM竞赛随机性会比较大,所以新手请掌握好基础,基础不牢,地动山摇(大一上)

  1. C语言题 包括TZOJ1452在内的60道C语言实验题,可以利用OJ的搜索,由于这种题目比较多,就不一一列举
  2. 暴力枚举 3449 5125 4604 2626
  3. 递归 1483
  4. 模拟 1093 3715 3726 3727 4391 1148
  5. 构造 这种题往往在CF中会遇到 刷题集点这里,就是都是英文题

TZOJ200题以后可以尝试着去刷一些简单的算法(大一上以及大一下)

  1. 前缀后缀和 1532 4262
  2. 二分 5629 1597 1041 3044(二分100次)
  3. 排序(归并排序) 2452
  4. 贪心 1332 5059 1004 3110 4493
  5. dfs 2777 4408 4833 3104 3360
  6. bfs 3533 1335 1748 3031

TZOJ300题以后可以尝试着去刷一些简单的算法和数据结构,要参加天梯赛就得刷会了(大一下以及大二上)

  1. 并查集
  2. 最短路(Floyd Dijkstra Bellman-Ford)
  3. 最小生成树(Kruskal Prim)
  4. stl的应用
  5. 拓扑排序

TZOJ500题左右就可以入门算法了,在省赛中往往用得到。这里也非常推荐一个题目集USCAO

  1. 背包 台州学院基础算法学习之背包
  2. 容斥
  3. 图论基础
  4. 凸包
  5. 树状数组
  6. 字典树
  7. 矩阵快速幂

之后大概每个队伍都要分方向了,建议可以打打CF atcoder Wannafly hiho

队伍中有一个人尝试下51nod 的三级算法题或五级算法题

内容往往不是割裂的,而是组合的

图论方向

  1. 二分图
  2. 网络流
  3. 强连通分量
  4. 割边和割点
  5. 树的直径
  6. LCA(最近公共祖先)
  7. 差分约束
  8. 树分块

动态规划方向

  1. 最长上升(不下降等等)子序列
  2. 区间DP
  3. 环形DP
  4. 状压DP
  5. 概率DP
  6. 树形DP
  7. 单调队列优化DP

数据结构方向

  1. 线段树
  2. 莫队

字符串方向

  1. KMP 2897
  2. HSAH
  3. AC自动机
  4. SA(后缀数组)
  5. SAM (后缀自动机)

组合数学方向

  1. 母函数
  2. 线性求逆元
  3. 组合数  51nod 1829
  4. 组合数学上的dp累加

计算几何方向

  1. 扫描线 Color it
  2. 线段求交
  3. 半平面交
  4. 随机化算法

数论方向

  1. 费马小定理 3151
  2. 扩展欧几里得 3343
  3. 高斯消元 1676 2968
  4. 欧拉函数 3303
  5. 莫比乌斯函数
  6. 积性函数
  7. FFT(快速傅里叶变换) 5482 Gym - 101667H CodeForces - 528D
  8. Miller-Rabin 素数检测 2646 4383
  9. RSA等加密算法 1196

线段求交 5625

计算机网络配置 Gym 100623A

ACM基础算法入门及题目列表的更多相关文章

  1. 贝叶斯公式由浅入深大讲解—AI基础算法入门

    1 贝叶斯方法 长久以来,人们对一件事情发生或不发生的概率,只有固定的0和1,即要么发生,要么不发生,从来不会去考虑某件事情发生的概率有多大,不发生的概率又是多大.而且概率虽然未知,但最起码是一个确定 ...

  2. 贝叶斯公式由浅入深大讲解—AI基础算法入门【转】

    本文转载自:https://www.cnblogs.com/zhoulujun/p/8893393.html 1 贝叶斯方法 长久以来,人们对一件事情发生或不发生的概率,只有固定的0和1,即要么发生, ...

  3. 强化学习基础算法入门 【PPT】

    该部分内容来自于定期的小组讨论,源于师弟的汇报. ==============================================

  4. java入门学习(3)—循环,选择,基础算法,API概念

    1.顺序结构:也就是顺着程序的前后关系,依次执行.2.选择分支:利用if..else , / switch(){case [ 这个必须是常量]:}; / if..else if….. ….else.. ...

  5. POJ 动态规划题目列表

    ]POJ 动态规划题目列表 容易: 1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 1189, 1208, 1276, 1322 ...

  6. dp题目列表

    此文转载别人,希望自己能够做完这些题目! 1.POJ动态规划题目列表 容易:1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 11 ...

  7. poj 动态规划题目列表及总结

    此文转载别人,希望自己能够做完这些题目! 1.POJ动态规划题目列表 容易:1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 11 ...

  8. 循环冗余校验(CRC)算法入门引导

    目录 写给嵌入式程序员的循环冗余校验CRC算法入门引导 前言 从奇偶校验说起 累加和校验 初识 CRC 算法 CRC算法的编程实现 前言 CRC校验(循环冗余校验)是数据通讯中最常采用的校验方式.在嵌 ...

  9. (转)三角函数计算,Cordic 算法入门

    由于最近要使用atan2函数,但是时间上消耗比较多,因而网上搜了一下简化的算法. 原帖地址:http://blog.csdn.net/liyuanbhu/article/details/8458769 ...

随机推荐

  1. Java的感受

    感觉Java很重要,但是学起来好像并不比C语言简单.

  2. 配置伪静态(URL重写)

    本篇借鉴了很多文章,这里做个记录. 有时我们的导航栏出现xx.aspx?id=x&name=xx 等等这样,会显得不好看,我们可以利用伪静态来美化我们的导航栏,伪静态的形式可以自己定义,本质还 ...

  3. 前端css优先级以及继承

    1.css优先级以及继承 css具有两大特性:继承性和层叠性 继承性 继承:给父级设置一些属性,子级继承了父级的该属性,这就是我们的css中的继承. 有一些属性是可以继承下来 : color . fo ...

  4. 知识总结和记录——Bootstrap

    官方地址:https://getbootstrap.com 中文地址:http://www.bootcss.com/ 使用V3版本的Bootstrap,下载的是用于生产环境的Bootstrap. 目录 ...

  5. 关于Pycharm基本操作笔记

    创建 project(工程,译音:破拽科特) 1.Create New project(创建一个新的工程,译音:科瑞特 纽 破摘科特) 2.pure python(纯派森,译音:皮忧儿 派森) 3.l ...

  6. 设置vim tab为4个空格

    Vim 编辑器默认tab为8个空格,但对于pythoner来说,必须要调整到4个空格. 方法如下: 在~/.vimrc文件中加入下面设置: set ts=4 #设置tabstop为4个空格 set e ...

  7. Jenkins持续化集成

    Jenkins介绍 Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: 1.持续的软件版本发布/测试项目. 2.监控外部调用执行的工作. 安装环境 操作系统:lin ...

  8. mysql8.0 忘记root密码

    先打开一个cmd:net stop mysql //关闭mysql服务mysqld --shared-memory --skip-grant-tables//跳过登录密码在不关闭第一个CMD的情况下打 ...

  9. [Codeforces86D]Powerful array(莫队算法)

    题意:定义K[x]为元素x在区间[l,r]内出现的次数,那么它的贡献为K[x]*K[x]*x 给定一个序列,以及一些区间询问,求每个区间的贡献 算是莫队算法膜版题,不带修改的 Code #includ ...

  10. javaScript编辑器sublime的安装

    最近在学习js,学习任何一门语言之前,当然免不了最初的环境安装: 见:http://www.cnblogs.com/zhcncn/p/4113589.html