首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
算法
奕翎
创建于2023-02-22
订阅专栏
这里是我的算法笔记
暂无订阅
共55篇文章
创建于2023-02-22
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
欧拉函数
欧拉函数 公式求欧拉函数 证明:容斥原理 首先N减去所有其质因子的倍数 减完后会发现两个质因子乘积的倍数被多减去了,再加回来 加回来后会发现三个质因子乘积的倍数被多加上了,再减回去 就这样子一直下去就
约数
约数 试除法求所有约数 C++ Java 约数个数与约数之和 如果 N = p1^c1^ * p2^c2^ * ... * pk^ck^ 约数个数: (c1 + 1) * (c2 + 1) * ...
数据结构 - 树
树 节点(结点)/Node是一个独立的对象 每一个结点中存储着四个元素 父节点地址(没有父节点则记为null) 值 左子节点地址(没有左子节点则记为null) 右子节点地址(没有右子节点则记为null
质数
质数 试除法判定质数 C++ 试除法分解质因数 质因数:每个合数都可以写成几个质数(也可称为素数)相乘的形式 ,这几个质数就都叫做这个合数的质因数。 C++ 筛质数 朴素筛法(埃式筛) 每次筛掉已确定
贪心 - 推公式
推公式 问题背景 策略 按照 wi+si 从小到大排序,最大的危险系数一定是最小的 练习 01 耍杂技的牛 题目 题解
贪心 - 绝对值不等式
绝对值不等式 问题背景 在一条数轴上有 N 家商店,它们的坐标分别为 A1∼AN。 现在需要在数轴上建立一家货仓,每天清晨,从货仓到每家商店都要运送一车商品。 为了提高效率,求把货仓建在何处,可以使得
贪心 - 排序不等式
排序不等式 问题背景 有 n 个人排队到 11 个水龙头处打水,第 i 个人装满水桶所需的时间是 ti,请问如何安排他们的打水顺序才能使所有人的等待时间之和最小? 策略 让用时长短的人先装 练习 01
贪心 - Huffman树
Huffman树 问题背景 策略 每次合并重量最小的两堆,用堆来维护 练习 01 合并果子 题目 题解
贪心 - 区间问题 - 区间覆盖
区间覆盖 问题背景 给定 N 个闭区间 [ai,bi] 以及一个线段区间 [s,t],请你选择尽量少的区间,将指定线段区间完全覆盖。 输出最少区间数,如果无法完全覆盖则输出 −1。 策略 将每个区间按
贪心 - 区间问题 - 区间分组
区间分组 问题背景 给定 N 个闭区间 [ai,bi],请你将这些区间分成若干组,使得每组内部的区间两两之间(包括端点)没有交集,并使得组数尽可能小。 输出最小组数。 策略 将每个区间按左端点从小到大
贪心 - 区间问题 - 最大不相交区间数量
问题背景 给定 N 个闭区间 [ai,bi],请你在数轴上选择若干区间,使得选中的区间之间互不相交(包括端点)。 输出可选取区间的最大数量。 策略 将每个区间按右端点从小到大排序 从前往后依次枚举每个
贪心 - 区间问题 - 区间选点
区间选点 问题背景 给定 N 个闭区间 [ai,bi],请你在数轴上选择尽量少的点,使得每个区间内至少包含一个选出的点。 输出选择的点的最小数量。 位于区间端点上的点也算作区间内。 策略 将每个区间按
记忆化搜索
记忆化搜索 滑雪 问题背景 Dp分析 状态表示 二维状态表示f(i,j) f(i,j)表示的是哪一个集合:所有满足如下条件的集合 所有从f(i,j)开始滑的路径 f(i,j)存的是什么属性:Max,
树形DP
树形DP 没有上司的舞会 问题背景 Dp分析 状态表示 两个二维状态表示f(u,0),f(u,1) f(u,0)和f(u,1)分别表示的是哪一个集合:所有满足如下条件的集合 f(u,0):所有从以u为
状态压缩DP
蒙德里安的梦想 问题背景 分析 首先要知道,我们只要先把横着的的放好了,竖着的自然就放好了,因此总方案等于只放横着的小方块的合法方案数 那么如何判断当前方案合法,即所有位置是否都能被小方块放满 很显然
数位统计DP - 计数问题
计数问题 问题背景 分析,通过count(int n, int x)来算出1 ~ n中出现了多少次x,x从0取到9 对于七位数n = a b c d e f g,其中a ~ g为n上的每一位数,现在我
计数类DP - 整数划分
问题背景 解法一 Dp分析 状态表示 二维状态表示f(i,j) f(i,j)表示的是哪一个集合:所有满足如下条件的集合 将其看做成完全背包问题,物品就是从1到n,每个数可以选无限次 从前i个数中选,它
区间DP - 石子合并
问题背景 Dp分析 状态表示 二维状态表示f(i,j) f(i,j)表示的是哪一个集合:所有满足如下条件的集合 所有将第i堆石子和第j堆石子合并成一堆石子的合并方式 f(i,j)存的是什么属性:Max
线性DP - 最长公共子序列
最长公共子序列 问题背景 给定两个长度分别为N和M的字符串A和B,求既是A的子序列又是B的子序列的字符串长度最长是多少。(子序列不一定连续) Dp分析 状态表示 二维的状态表示f(i,j) f(i,
线性DP - 最长上升子序列
问题背景 给定一个长度为N的数列,求数值严格单调递增的子序列的长度最长是多少。(子序列不一定连续) Dp分析 状态表示 一维状态表示f(i) f(i,j)表示的是哪一个集合:所有满足如下条件的集合 所
下一页