随笔分类 -  算法随笔

摘要:前言 可持久化 可持久化,即对于每次更改,我们都期望记录它的历史信息。 进行可持久化的数据结构通常满足,在修改操作时,数据结构本身的拓扑序没有改变,即形态没有改变; 例如线段树,Trie 树,数组等都可以容易地进行可持久化。 关于主席树和可持久化线段树的区别 主席树全称是可持久化权值线段树,参见知乎 阅读全文
posted @ 2025-08-02 19:10 Fireworks_Rise 阅读(32) 评论(0) 推荐(0)
摘要:前言 闲话 写了好久,有些细节点理解了,但是总是写不出来,不知道怎么解释,多感性理解吧,自己多画图辅助理解。 其实在很多事情上,可能放弃才是正确的选择。 能想清楚就行,不必强求自己。像我一直困在一个点想来想去,花了不少时间,最后还是只能笼统地概括... 标记永久化 解释 线段树中普通的区间修改都需要 阅读全文
posted @ 2025-07-14 11:03 Fireworks_Rise 阅读(40) 评论(1) 推荐(2)
摘要:时间 \(2025/02/05-2025/02/10\) 最优化 \(2025/02/06\) 初等数论 \(2025/02/07\) 斐蜀定理(Bézout's lemma) 定理 1.1 对于两个整数 \(a\) 和 \(b\),有整数 \(x\) 和 \(y\) 使得 \(ax + by = 阅读全文
posted @ 2025-03-31 15:25 Fireworks_Rise 阅读(67) 评论(0) 推荐(0)
摘要:哈希专题 \(2025/01/18\) [国家集训队] 等差子序列 简要题意 询问一个从 \(1\) 到 \(n\) 的排列是否存在一个等差子序列,且满足序列长度 \(\ge 3\)。 Solution 很显然的,我们只需要求出一个长度等于 \(3\) 的等差子序列即可,那尝试把突破口放在中间的数中 阅读全文
posted @ 2025-03-31 15:20 Fireworks_Rise 阅读(51) 评论(0) 推荐(0)
摘要:还在持续更新ing 前言 此乃小 Oler 的一篇算法随笔,从今日后,还会进行详细的修订。 注明:有参考自论文《欧拉图相关的生成与计数问题探究》 简单介绍 著名的哥尼斯堡七桥问题是18世纪著名的古典数学问题之一,该问题在相当长的时间里无人能解。欧拉经过研究,于1736年发表了论文《哥尼斯堡的七座桥》 阅读全文
posted @ 2023-11-06 14:10 Fireworks_Rise 阅读(481) 评论(0) 推荐(0)
摘要:还在更新ing 前言 此乃小 Oler 的一篇小小算法随笔,从今日后,还会进行详细的修订。 一、简单介绍(change root dp) 如需了解树形dp的,本蒟蒻毛遂自荐,万字大文动态规划【树形dp】Tree DP ~~~详解 换根dp,又叫二次扫描,是树形DP的一种,是一种用来求解树上各点到其他 阅读全文
posted @ 2023-11-06 14:00 Fireworks_Rise 阅读(110) 评论(0) 推荐(0)
摘要:前言 此乃小 Oler 的一篇算法随笔,从今日后,还会进行详细的修订。 注:本文可能会参考某些大佬的文献。 定义 & 说明 最大子矩形问题:在一个给定的矩形网格中有一些障碍点,要找出网格内部不包含任何障碍点,且边界与坐标轴平行的最大子矩形。 定义有效子矩形为内部不包含任何障碍点且边界与坐标轴平行的子 阅读全文
posted @ 2023-08-18 20:26 Fireworks_Rise 阅读(217) 评论(0) 推荐(0)
摘要:前言 此乃小 Oler 的一篇算法随笔,从今日后,还会进行详细的修订。 一、简单介绍(MST) 在一给定的无向图 \(G=(V,E)\) 中, \((u,v)\) 代表连接顶点 \(u\) 与顶点 \(v\) 的边,而 \(w(u,v)\) 代表此边的权重,若存在 \(T\) 为 \(E\) 的子集 阅读全文
posted @ 2023-08-07 21:44 Fireworks_Rise 阅读(199) 评论(0) 推荐(0)
摘要:前言 此乃一个小 Oler 的一篇图论算法随笔,从今日后,还会进行详细的修订。 一、简单介绍 (Dijkstra) 迪杰斯特拉算法 ( Dijkstra ) 是由荷兰计算机科学家狄克斯特拉于1959年提出的,因此又叫狄克斯特拉算法。是从一个顶点到其余各顶点的最短路径算法,解决的是有权图中最短路径问题 阅读全文
posted @ 2023-08-04 19:12 Fireworks_Rise 阅读(182) 评论(0) 推荐(0)
摘要:一、简单介绍 (Tree DP) 树形动态规划 ( Tree DP ) 是一种常用的动态规划技巧,跟普通的线性动态规划不同,此算法将DP建立在树状结构或图的基础上,是一种 DP 的思想。 以下是 树形 DP 的一般步骤: ①、定义状态:根据问题的特点,定义每个节点需要保存的状态。可以是最大值、最小值 阅读全文
posted @ 2023-07-29 22:21 Fireworks_Rise 阅读(169) 评论(0) 推荐(0)
摘要:一、简单介绍 (Lowest Common Ancestors) 在一棵二叉搜索树中,任意两个结点的最近公共祖先,是指以这两个结点为后代的深度最大的那个结点。需要通过比较两个结点的值,来判断它们在二叉搜索树中的位置关系。如果两个结点的值都小于当前结点的值,那么它们一定在当前结点的左子树中;如果两个结 阅读全文
posted @ 2023-07-20 11:23 Fireworks_Rise 阅读(51) 评论(0) 推荐(0)
摘要:一、简单介绍 字典树 \(Trie\) 树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。 它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。 二、代码实现 阅读全文
posted @ 2023-07-18 07:13 Fireworks_Rise 阅读(30) 评论(0) 推荐(0)