LU 分解及 Matrix determinant lemma
LU 分解
对于一个矩阵 ,求出 ,其中 是下三角矩阵, 是上三角矩阵的过程称为 LU 分解。
一般矩阵的 LU 分解可以消成行列式的同时记录逆矩阵,复杂度同高斯消元。
一个比较好的性质是 ,如果能利用 的特殊性质快速分解出来,因为 就是对角线乘积,所以 可以快速计算。
比如 。
对其施以欧拉反演,可以得到 。
则可以拆成两个矩阵:,则容易验证 ,且 满足三角矩阵条件。因此 。
进一步的,如果 ,则对于满足 ,即 为 的高维差分,。
Matrix determinant lemma
记 为 的矩阵, 为 的矩阵, 为 阶单位矩阵。
主要定理是:
证明可以考虑构造矩阵相乘:
对两边取行列式即可。
将其扩展到一般的情况,令 为 矩阵,则有
假设我们要求的是一个形如 的行列式,且 , 易求行列式和逆,则 MDL 的最大作用是将 原本隐藏在这个乘法里的性质显露出来。一个简单的应用例子:如果 远小于 ,则现在只需要做一次 的矩阵乘法并对一个阶为 的矩阵求行列式,而不是原来的 的矩阵乘法以及阶为 的矩阵求行列式。
其相比于 LU 分解来说不要求分解出来的一定是两个对角矩阵,适用性更加广泛,但是性质要弱一点。
PA 2022 Drzewa rozpinające
使用矩阵树定理,我们要求的值即为 ,其中 为度数矩阵, 为邻接矩阵。
容易计算,并且由于其为对角矩阵,逆和行列式都容易计算。考虑仍然对 施以欧拉反演,可以构造出两个 的矩阵 ,满足 。
使用 MDL,可以得到我们要求的就是 。
你说得对,但是这看上去还是要求阶为 矩阵的行列式啊?
考虑矩阵 的实际意义,会发现只有 的位置有值,因此这个矩阵非常稀疏,且值主要集中在上方的一个类似于反比例函数的区域,所以从下到上消元速度非常快。时间复杂度可以(?)看作 的。
AGC060F Spanning Trees of Interval Graph
使用矩阵树定理,直接求行列式需要对一个很大的矩阵消元,爆了。
发现可以使用点减边容斥计算这个 ,这样的话使用 MDL 之后就只需要对一个阶 的矩阵求行列式,于是就对完了。
均容易根据实际意义二维前缀和求得,时间复杂度 。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2022-10-18 QOJ #2643. Bubble Sort 2