高斯消元
先占坑,矩阵和LCA都没写先写Tarjan和高消。。。
前置知识:矩阵
高斯消元需要用到矩阵但不会用到矩阵的乘法以及快速幂
但是会用到矩阵的初等行列变换
但是初等行列变换就3个操作
1.交换行/列
2.将某一行/列的若干倍加到另一行/列上
3.用一个非0数乘以某一行
非常好理解
概念
高斯消元是用矩阵解由m个n元一次方程组成的线性方程组
1.把线性方程组中所有的系数写进矩阵
每一行对应一个方程
每一列对应一个元
如果某个元没有在某个方程组出现标成0即可
此法得到的矩阵叫做增广矩阵
2.用初等行变换将增广矩阵变换为上三角矩阵
这时已经有一个未知数是个定值了
当然也可以化成对角矩阵可以直接得出解,这种解法叫约旦消元
3.把定值代入方程组,得出其他元的值
通过初等行变化把增广矩阵变为阶梯性矩阵的线性方程组求解算法就是高斯消元算法
特殊情形
1.无解:出现形如"0=d"的情况,即矩阵中对应系数为0但常数不为0
2.无数解:形如“0=0”的情况,即矩阵中的对应系数为0且常数也是0
显然在求得目标矩阵后,还要先特判这两种情况,这时候约旦消元就更明显了
当然还有一种显然的无数解情形:m<n
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具