ACM模板(满注释模板!)

目录

  • F o r w o r d Forword Forword
  • T e x t   P a r t Text\ Part Text Part
  • 一、 C + +        S T L C++ {\ \ \ \ \ \ } STL C++      STL
  • 二、动态规划     {\ \ \ }     d y n a m i c   p r o g r a m m i n g dynamic\ programming dynamic programming
  • 三、字符串       {\ \ \ \ \ }       S t r i n g String String
  • 四、数据结构     {\ \ \ }     S t r u c t u r e Structure Structure
  • 五、图论           {\ \ \ \ \ \ \ \ \ }           G r a p h   t h e o r y Graph\ theory Graph theory
  • 六、网络流与二分图        {\ \ \ \ \ \ }        N e t w o r k   f l o w   a n d   B i p a r t i t e   g r a p h Network\ flow\ and\ Bipartite\ graph Network flow and Bipartite graph
  • 七、数论           {\ \ \ \ \ \ \ \ \ }           N u m b e r T h e o r y Number Theory NumberTheory
  • 八、计算几何     {\ \ \ }     G e o m e t r y Geometry Geometry
  • 九、其他            {\ \ \ \ \ \ \ \ \ \ }            O t h e r Other Other

F o r w o r d Forword Forword

开始之前的碎碎念,为什么想我这样的一个蒟蒻都开始写我自己的ACM模板了

首先自己写自己的模板可以在赛场上更加亲切,并且能保证自己的超长头文件和宏定义不会写错。写一些模板也可以使我更加地熟悉这些算法,并且我的模板是更适合我自己的,因为我比较菜,所以我的模板会附带一些注释和我自己对这个算法的简单理解和易错点,以及我刷题得到的一些经验教训,一些提示的话。更重要的是能帮助我自己复习,毕竟很多算法学完了没几天就忘得差不多了,所以这种学会讲给别人听的学习方法(写博客,就像中学时期的错题本一样)也挺适合于ACM的,给大家提供一个学习的思路,大佬勿喷。

这个模板我可能会更新的很慢,主要取决于我的学习速度 所以不要着急哈 。

准备写这个模板还有一个原因是我看了一位学姐的模板,深受启发,但是学姐很明显是已经学完了全部的算法,所以更新的非常快 ,我就不一样了,学到哪儿更到哪儿。

我的模板大概会跟学姐的模板格式差不多吧。

以后我的模板要每一句都加上注释,方便我太久不用快速了解每一句的作用,这样在写模板改编题的时候改得动模板主要还是因为我太菜了


T e x t   P a r t Text\ Part Text Part

首先是C++头文件汇总,比赛的时候万一要用了可以来对照一下,以及我的常用的优(冗)美(长)的头文件,要是模板有我自己#define的语句没看懂可以过来对照一下。

C + + C++ C++头文件汇总

我已经决定以后再也不用头文件宏定义偷懒了,这个没用了

一、 C + +        S T L C++ {\ \ \ \ \ \ } STL C++      STL

比STL还STL?——__gnu_pbds食用教程

  1. 模板 - C++ STL

  1. map

  1. queue类

二、动态规划     {\ \ \ }     d y n a m i c   p r o g r a m m i n g dynamic\ programming dynamic programming

动态规划要什么模板

1.算法

算法简介:

2.算法

算法简介:

3 算法

算法简介:

三、字符串       {\ \ \ \ \ }       S t r i n g String String

  1. KMP算法

  1. trie树(字典树)

  1. AC自动机

多模匹配算法
求目标串中出现了几个模式串


  1. 字符串哈希

四、数据结构     {\ \ \ }     S t r u c t u r e Structure Structure

  1. 基础数据结构

单链表
双链表

循环队列
单调栈
单调队列
并查集

一般哈希


  1. 并查集

朴素并查集
维护size的并查集
维护到祖宗节点距离的并查集
路径压缩和按秩合并
边带权
扩展域


  1. 树状数组

树状数组求逆序对
区间加、求单点值
区间加、区间求和
单点修改、区间求最值
实时求出剩余的数中的第k小的数(树状数组+二分)


  1. 线段树

懒惰标记
扫描线法


五、图论           {\ \ \ \ \ \ \ \ \ }           G r a p h   t h e o r y Graph\ theory Graph theory

  1. 树与图的遍历

  1. 最短路合集

一、线段树优化的Dijkstra
1.普通线段树
2.最强的zkw线段树优化版本
3.路径还原
二、可以处理负权值的SPFA
SPFA的SLF优化
SPFA的LLL优化
SPFA的DFS优化(适用于负环的判断)
三、两种分层图最短路
分层次
分维度
四、Floyd算法,传递闭包


  1. k短路

k短路
Dijkstra + A*


  1. 欧拉路、欧拉回路(一笔画问题)

非递归版
普通递归版
HierholzersHierholzers算法(输出字典序最小的答案)
FleuryFleury算法
究极优化版


  1. 最小生成树

kruskal算法
prim算法
最小生成森林问题(K颗树)
严格次小生成树


  1. 负环(超时高效优化技巧)、01分数规划

负/正环判断
01分数规划


  1. 最近公共祖先及其应用

一、LCA的在线倍增算法
二、LCA的离线Tarjan算法
三、树上差分
四、次小生成树(LCA优化)


  1. 有向图的连通性

最大半连通子图
有向图的tarjan模板
去重缩点模板
按拓扑序递推模板
Tarjan算法求有向图强连通分量并缩点
结论:变成强连通图需要新建的边数


  1. 无向图的连通性

tarjan算法求无向图的桥、边双连通分量并缩点
tarjan算法求无向图的割点、点双连通分量并缩点
结论:变成边双连通分量所需要新建的边数


  1. 拓扑排序

toposort模板
已有编号求字典序最小的拓扑序(优先队列)
给所有点分配编号使得拓扑序的字典序最小(反图、优先队列)

六、网络流与二分图        {\ \ \ \ \ \ }        N e t w o r k   f l o w   a n d   B i p a r t i t e   g r a p h Network\ flow\ and\ Bipartite\ graph Network flow and Bipartite graph

  1. 二分图

染色法判断二分图
增广路的性质
一些二分图的概念和定理
二分图最大匹配
匈牙利算法
二分图匹配模型的两个要素
二分图最小点覆盖的一个要素
DAG的最小路径点覆盖
DAG的最小可重复路径点覆盖
最小可重复路径点覆盖模板

七、数论           {\ \ \ \ \ \ \ \ \ }           N u m b e r T h e o r y Number Theory NumberTheory

  1. 基础数论

试除法判定质数
试除法分解质因数
朴素筛法求素数
线性筛法求素数
试除法求所有约数
约数个数和约数之和
欧几里得算法
求欧拉函数
筛法求欧拉函数
快速幂
扩展欧几里得算法
高斯消元
递归法求组合数
通过预处理逆元的方式求组合数
Lucas定理
分解质因数法求组合数
卡特兰数
NIM游戏
SG函数


  1. 线性基

插入和判断
查询异或最值
查询k小值


3 算法

算法简介:

八、计算几何     {\ \ \ }     G e o m e t r y Geometry Geometry

1.算法

算法简介:

2.算法

算法简介:

3 算法

算法简介:

九、其他            {\ \ \ \ \ \ \ \ \ \ }            O t h e r Other Other

  1. 常用函数总结
全排列 | 读写优化 | 返回容器内最大最小值 | 复制函数 | 容器删除函数 | 容器填充函数 | 查找函数 | 字符串转换整数 | 欧拉筛 | 快速幂 | 快速乘 | 截取部分字符串函数

  1. 高精度计算
重载运算符的高精加减乘除

  1. 离散化

  1. 模板 - 基础算法

快速排序
归并排序
整数二分
浮点数二分
高精度加法
高精度减法
高精度乘低精度
高精度除以低精度
一维前缀和
二维前缀和
一维差分
二维差分
双指针算法
离散化
区间合并



待更

ACM模板(满注释模板!)_第1张图片
此处应有BGM


学姐的模板
ACM模板 (f-zyj)

顺便膜拜一下%%%

以及 k u a n g b i n kuangbin kuangbin大佬的模板%%%
ACM在线模板(kuangbin)

还有一个大佬的模板
ACM常用模板(+模板题)(基础)

以及一个奇怪的博客
ACM赛前准备——模板(排版篇)

他的板子实在是太全了

一些将来转成PDF形式时需要用到的东西

vscode中用markdown文件生成pdf文件时KaTex公式不能正常显示

[工具使用]-利用latex管理创建自己的ACM模板

这个是关键做一本代码书 Latex + C (win)

yxc的模板

你可能感兴趣的:(【ACM模板】)