浅学线性代数

posted on 2025-01-11 04:33:22 | under | source

定义

  • 线性组合:向量 \(a\) 乘上一个数组的到的向量。
  • 线性相关:向量集合 \(A\) 可以通过线性组合得到向量 \(b\),则称它们线性相关。
  • 线性无关:与之相对,不可表示。
  • 线性空间的基:一个线性空间 \(V\) 中的所有向量,都可被向量集合 \(A\) 表示。
  • 线性空间的维:基的大小。
  • 矩阵的秩:将其视为行向量集合或列向量集合,张出的线性空间的维。

高消拓展

求逆

因为初等行变换可以视为乘上特殊矩阵。那么对 \(A\) 求逆,只需将其消为 \(I\),并拿一个初始为 \(I\) 的矩阵 \(B\) 记录消元过程。\(B\) 即为逆。

trick:合理设主元,减少未知数

例如网格图上的随机游走问题,暴力做是 \(O((nm)^3)\) 级别的,通过观察,将主元设为某一列或行,起到优化的作用。进一步的,可以矩阵加速递推。

线性基

就是动态删增向量,并维护线性空间的基。

以异或空间线性基为例,维护的其实是阶梯型矩阵。

构造

插入 \(p\),先展开为二进制,然后从高位到低位插入,假如第 \(i\) 位已经有元素 \(x\),就让 \(p\) 异或上 \(x\)。否则放上去即可。

应用

  • 向量带权,求权值最小的基:形如 MST 的拟阵贪心,排序后依次插入即可。
  • 最大异或和:从高到低位,若能令答案更大就异或。
  • 合并:启发式合并。
  • 最小异或和:最小的那个。
  • 判断能否表示:看看能否插入,能就不可表示,反之可表示。
  • \(k\) 大异或和:先化简为行简化型阶梯矩阵,满足每个向量在其位上只有它是 \(1\)。然后形如二进制展开 \(k\) 即可。

可删线性基

一般来说,不可删去,需搭配线段树分治等策略。

可以离线下来,给向量一个删除时间。插入时,假如当前向量比插入向量删除时间早,就交换两者,继续插入即可。这样线性基的所有向量删除时间尽量晚。

线性基求交

太菜了,还不会。

qwq。

随机化:Schwartz-Zippel 引理

内容

  • 对于有限域 \(F\) 中的 \(m\)\(n\) 次多项式 \(f(x_1\dots x_m)\),为 \(x_1\dots x_m\) 随机赋值,\(f\)\(0\) 的几率为 \(\frac {n}{|F|}\)

应用

例题。

做法是随机一个向量 \(x\),判断 \(ABx=Cx\)

证明:也就是 \((AB-C)x=0\) 是否与 \(AB-C=0\) 等价,判错当且仅当 \(AB-C\ne 0\)\((AB-C)x=0\)。左为非零方阵,右为向量,所以乘积可视为 \(n\)\(n\) 元一次多项式,由一个为 \(0\) 的概率为 \(\frac 1{|F|}\),至少一个事件成立的概率不大于单个事件成立概率之和,所以出错概率为 \(\frac n{|F|}\)\(F\) 取较大模数几乎不可能发生。

posted @ 2026-01-14 18:10  Zwi  阅读(0)  评论(0)    收藏  举报