Code Monkey home page Code Monkey logo

algorithm-library's Introduction

Algorithm Library

说明

个人的算法模板(C++)。

本人已退役,该模板不再进行维护。

很多资料参考自 OI Wiki,以及很多大佬的博客,由于年代久远无法具体考究,这里表示歉意。

有些模板是完全照抄,没有经过验证,如要使用请提前测试。

难度

由于本人实力较弱,板子内容偏基础较多,可能有少数较难问题。

也许用来冲击 ICPC 铜会不错,虽然本人打铁了。

修改

本文是 LaTeX 编写,直接修改 print.tex 中相关内容再编译即可。

内容

  • 基础类
    • 常用函数及模板
    • 快速输入输出
    • string 处理
    • 高精度
    • 离散化
    • STL 容器相关使用
  • 数论
    • 数论定理或规律
    • 线性筛
    • 逆元
    • exgcd 与线性同余方程
    • **剩余定理
    • BSGS
    • cipolla 与二次剩余
    • 卢卡斯定理
    • 数论分块
    • 莫比乌斯反演
    • 亚线性筛
      • 积性函数
      • 杜教筛
      • Min25 筛
    • 高斯消元
    • 拉格朗日插值
    • 多项式
      • FFT
      • NTT
    • 线性基
    • 组合数学
      • 容斥原理
      • 康拓展开
    • 生成函数
      • OGF
      • EGF
    • 博弈论
  • 图论
    • 树的直径与中心
    • MST
    • LCA
    • 树上差分
    • 点分治
    • 最短路
    • 连通分量相关
      • 强联通分量
      • 割点
      • 割边
    • 2-SAT
    • 拓扑排序
    • 图匹配
      • 匈牙利
      • KM
      • 带花树
    • 网络流
      • 最大流最小割
      • 费用流
      • 上下界网络流
    • Prufer 序列
    • 欧拉图与哈密顿图
  • 数据结构
    • 莫队
    • 单调栈与单调队列
    • 树状数组
    • 线段树
    • Splay
    • 主席树
    • LCT
    • 01 Trie
  • 计算几何
    • 扫描线
    • 凸包
    • 旋转卡壳
  • 字符串
    • Hash
    • 前缀函数
    • KMP
    • Trie
    • AC 自动机
    • SA
    • SAM
    • Manacher
  • 动态规划
    • 线性 DP
    • 背包 DP(该部分内容没写,推荐阅读背包九讲)
    • 区间 DP
    • 数位 DP
    • 动态规划优化
      • 单调队列、单调栈
      • 斜率优化
      • 四边形不等式优化

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.