区间dp(二) 发表于 2025-01-01 更新于 2025-10-01 分类于 编程 , 算法 , 动态规划 , 区间dp 本文字数: 1.5k 阅读时长 ≈ 5 分钟 区间dp(二) 洛谷P1220 P1220 关路灯 请你为老张编一程序来安排关灯的顺序,使从老张开始关灯时刻算起所有灯消耗电最少(灯关掉后便不再消耗电了)。 老张关路灯像区间dp,可以发现他关路灯时不会关关过的中间加的,不然不优。 状态 dpi,j,0/1dp_{i,j,0/1}dpi,j,0/1 表示区间关 [i,j][i,j][i,j] 最后达到 i/ji/ji/j 的最少功耗。 答案 min(dp1,n,0,dp1,n,1)\min(dp_{1,n,0},dp_{1,n,1}) min(dp1,n,0,dp1,n,1) 阅读全文 »
连通性问题 发表于 2025-01-01 更新于 2025-10-01 分类于 编程 , 算法 , 连通性问题 本文字数: 2.9k 阅读时长 ≈ 10 分钟 连通性问题 tarjan:连通性问题永远的神。 双连通与割点、割边 点双连通:在无向图中,删除一个点(不是 xxx 或者 yyy)后,点 xxx 和点 yyy 仍然能够彼此到达,那么称 xxx 和 yyy 是点双连通的; 边双连通:在无向图中,删除一条边后,点 xxx 和点 yyy 仍然能够彼此到达,那么称 xxx 和 yyy 是边双连通的; 性质 111: 点双连通不具有传递性,但边双连通具有传递性; 阅读全文 »
平衡树 发表于 2020-01-01 更新于 2025-10-01 分类于 编程 , 算法 , 平衡树 , 数据结构 本文字数: 2.5k 阅读时长 ≈ 9 分钟 平衡树 全称是二叉搜索平衡树 二叉搜索树:对于一棵二叉树,每个节点有权值 valvalval,任意节点 xxx 的左子树的权值小于等于 valxval_xvalx,右子树反之。 二叉搜索树的优点: 具有单调性,可以 log2log_2log2 的时间查找。 二叉搜索树的中序遍历是单调不减的,可以将下标当做权值,这样一个序列可以映射到一棵二叉搜索树。 为什么需要平衡树? 一个序列对应的二叉搜索树不唯一。我们希望找到高度最小的那颗应用。 若一棵二叉树的任意一个结点 xxx,其左右子树高度差不超过 111,称为二叉平衡树。 阅读全文 »