logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

c++竞赛常用函数

下面这份清单整理了,每个都给出「所在头文件」「一句话作用」「原型」「常用写法 / 注意点」四个维度,赛前 10 min 扫一遍即可快速回忆。

#java#开发语言
c++动态规划算法详解

动态规划(DP)是一种通过分解重叠子问题来优化求解的算法思想。其核心特征包括最优子结构、重叠子问题和无后效性。解题四步走:1)定义状态;2)推导状态转移方程;3)初始化;4)确定遍历顺序。经典案例包括斐波那契数列、爬楼梯、最大子数组和以及0-1背包问题,展示了从基础到进阶的应用。DP可通过空间优化(如滚动数组)提高效率。判断问题是否适用DP的标准是:是否具有最优子结构、重叠子问题且满足无后效性。掌

文章图片
#算法#c++#动态规划
c++竞赛常用函数

下面这份清单整理了,每个都给出「所在头文件」「一句话作用」「原型」「常用写法 / 注意点」四个维度,赛前 10 min 扫一遍即可快速回忆。

#java#开发语言
Set的用法(c++)

若想让集合按照特定的规则对元素进行排序,可以自定义比较函数。// 降序排列的集合也可以使用函数对象或者 lambda 表达式来自定义比较规则。std::set是 C++ 中用于存储唯一元素的容器,它会自动对元素进行排序。当你需要高效地存储不重复元素,并且希望元素有序时,std::set是一个不错的选择。不过要注意,std::set不支持直接修改元素的值,因为元素的值同时也是键,修改键会破坏集合的有

文章图片
#c++#算法#数据结构
[GESP202603 六级] 完全二叉树

本文提出了一种高效算法,用于统计有根二叉树中所有完全二叉子树的数量。通过递归遍历,为每个节点记录子树高度、是否为满二叉树和完全二叉树等属性。算法核心在于判断两种合法结构:左子树为满二叉树且右子树为完全二叉树(高度相等),或左子树为完全二叉树且右子树为满二叉树(左高右低1层)。采用后序遍历确保先处理子节点再处理父节点,时间复杂度O(n),适用于大规模数据(n≤1e5)。AC代码已通过洛谷测试,验证了

文章图片
#深度优先#c++#图论 +1
到底了