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

浙公网安备 33010602011771号