
算法与数据结构
文章平均质量分 62
a2659802
这个作者很懒,什么都没留下…
展开
-
leetcode weekly contest 310: Divide Intervals Into Minimum Number of Groups 四种解法
最小区间分组: 给定一系列2D整数闭区间(intervals[i] = [lefti,righti]) 将它们分成多个组,每个组内的区间都不相交. 计算分组的最小值原创 2022-09-14 23:41:32 · 338 阅读 · 1 评论 -
百度春招C++笔试-走台阶
题目 题目描述 走n个台阶 单步最多m个台阶,最少1个台阶 每步和前两步走的台阶数不能相同 问有多少种不同的走法 输入 一行整数n,m 表示台阶数,单步跨越的最多台阶数目 1<=n<=100000 2<=m<=7 输出 一行一个整数,表示答案 示例 输入 7 3 输出 2 说明 只有(1,2,3,1)和(1,3,2,1)符合规则 题解 思路 用DFS回溯搜索即可 注意条件每步和前两步走的台阶数不能相同 博主就是理解这个条件不到位,所以没有做对 代码 #include &原创 2021-03-17 21:37:17 · 453 阅读 · 0 评论 -
关于并查集的一些心得
并查集 并查集是一种树型的数据结构,用于处理一些不相交集合的合并及查询问题。 假设有M个球,然后给出N条约束条件(每个条件以Ma,Mb表示ab两个球放在同一个盒子里),让你求需要多少个盒子,以及每个盒子里球的编号。 在数据规模比较小时,可以考虑用图来表示。每个连通子图里是一个盒子里的所有小球 但是在规模比较大的时候,图法非常低效。这时候需要考虑使用并查集 并查集的核心为: 对两个已有集合的合并 (合并) 获取一个元素所在的集合 (查找) 初始化集合 查找: 如果用一个变量来唯一的标识集合,那么此变量的原创 2021-03-08 23:39:47 · 317 阅读 · 0 评论