Skip to content

Latest commit

 

History

History
72 lines (64 loc) · 6.24 KB

README.md

File metadata and controls

72 lines (64 loc) · 6.24 KB

C++的结构化封装算法模板

此仓库为一个算法竞赛模板库,语言为C++,其中的模板代码为用结构体或类封装的算法模板代码

  • 用结构体或类进行封装,其旨在让某些功能更方便调用,让模板更容易调试,代码结构更加清晰
  • 每份模板都有对应的一个或多个模板题目并在代码开头的注释说明了模板题目来源与链接
  • 所有模板均通过模板题目测试,正确性无误,通常情况可放心使用,但对于特殊问题可能需要注意合理修改
  • 出于更方便理解和使用模板,此模板库的封装代码大多数没有复杂泛型集成,只有结构体和类的简单封装,只有少数需要兼容数据类型的模板使用了泛型
  • 注:此模板库目前只保留作者所学过的模板中适合进行封装的模板,并不包含所有常用算法模板
  • 没有万能的算法模板直接适用于某一类问题的所有问题,也不是所有模板都适合封装,具体问题具体分析,合理运用,拒绝不思考无脑套用
  • 此模板库会随着作者的学习不断更新,也欢迎大家提issue或fork进行补充

注:此章节的【线段树合并】算法为一种用于解决树上某些节点存在一系列操作,需要自下而上将子节点信息传给父节点且单个节点处的信息适合用线段树维护处理的题目的算法思想,不存在所谓的标准模板,该模板仿照OI Wiki进行封装,仅体现其思想,可作参考,根据不同问题指向需要修改封装的结构体,核心步骤(不含具体处理)和框架可以大致保留

注:此章节的【树上启发式合并】算法为一种树上信息维护与处理的算法思想,不存在所谓的标准模板,该模板仅体现其思想,可作参考,根据不同问题指向需要修改封装的结构体,核心步骤(不含具体处理)和框架可以大致保留