矩阵
基本概念#
一个 n×m 的矩阵是 n 行 m 列的举行整列,一般由数组成,下面是一个 2×3 的矩阵. (123\456)
单位矩阵 I=(1⋯0 ⋮⋱⋮ 0⋯1) ,也就是对角线上为1,其他都为0的矩阵.
基本运算#
矩阵加法
每行每列各个数各自相加
矩阵乘法
设 A 是 n×m 的矩阵, B 是 m×p 的矩阵,他们的乘积 C 是一个 n×m 的矩阵, 其中
Ci,j=m∑k=1Ai,k×Bk,j
矩阵的幂
A0=I
An=An−1×A(n>0)
矩阵的转置
n×m 的矩阵 A 的转置 AT 是个 m×n 的矩阵, 可以通过 A 交换行列得到.
矩阵的逆
只有 n×n 的可能存在逆, 矩阵 A 的逆 B 满足
A×B=B×A=I
如果 B 存在,则 B 是唯一的,一般记做 A−1
- 矩阵惩罚满足分配率,结合律,不一定满足交换律
- 矩阵假发满足交换律和结合率
矩阵满足结合律,所以在求矩阵的幂的时候可以使用快速幂加速
行列式
基本概念#
行列式是一个定义域为 n×n 的矩阵, 值域为一个标量的函数, 通常记为 det(A)
行列式也可以表示为 n 维广义欧几里得空间中的有向体积.
一个 n×n 的行列式定义为 $$ det(A) = \sum_{\sigma \in S_n}(-1){n(\sigma)}\prod_{i=1}na_{i,\sigma(i)} $$
其中 Sn 表示集合 1,2,3⋯,n 上置换的全体, n(σ) 是对一个置换中逆序对的个数,逆序对的定义为满足 1≤i<j≤n 且 σ(i)>σ(j) 的 (i,j)
- 若矩阵中一行或者一列为0,那么该行列式的值为0
- 若矩阵中有一行有公因子k, 那么可以提出k, 使得 D=kD1
- 若矩阵中有一行可以拆分成两个数之和,那么该行列式可以拆分成两个行列式相加(剩余的行和列不发生改变)
- 交换矩阵的两行,行列式取反
- 将一行的 k 倍加到另一行上,行列式不变
- 转置,行列式不变
- 有上述性质可以得到,如果该矩阵是上三角或者下三角矩阵时,行列式的值等于对角线的乘积
解线性方程组
基本概念#
解线性方程组即求解方程组
⎧⎪⎨⎪⎩a1,1x1+a1,2x2+⋯+a1,nxn=b1 ⋮am,1x1+am,2x2+⋯+am,nxn=bm
也可以表示为 Ax=B , 其中 A 是 m×n 的矩阵, x 是 n 维列向量, b 是 m 维列向量, 即
⎛⎜
⎜⎝a1,1⋯a1,n⋮⋱⋮am,1⋯am,n⎞⎟
⎟⎠⎛⎜
⎜⎝x1⋮xn⎞⎟
⎟⎠=⎛⎜
⎜⎝b1⋮bm⎞⎟
⎟⎠
- 高斯消元(Gaussian elimination)
矩阵的初等变换:
互换矩阵两行(列),用非零常熟乘某一行(列),某行(列)的 k 倍加到矩阵的另一行(列)(避免精度损失)
则上述方程组可以用一个增光矩阵表示.
⎛⎜
⎜⎝a1,1⋯a1,nb1⋮⋱⋮⋮am,1⋯am,nbm⎞⎟
⎟⎠
于是我们只要进行初等变换使得上述矩阵称为上三角矩阵就行了.
- 克莱姆法则(Cramer rule)
当 A 为 n×n 的矩阵时,可用Cramer rule进行求解, 方程的解为:
xi=DiD
其中 D 是 A 的行列式, Di 是将 A 中第 i 列替换成 b 后得到的矩阵的行列式.
例如上述列子中,求解 x2 , 已知: D=(111 112 123)=−1,D(111 122 163)=−3
立刻就可以得到: x2=D2D=3
- 求解可逆矩阵的逆矩阵:
对于一个 n×n 的非奇异矩阵, 在矩阵右侧补上一个 n×n 的单位矩阵, 对于这个 n×(2n) 的矩阵进行高斯消元, 使得这个矩阵左侧变成一个 n×n 的单位矩阵.这是右侧的 n×n 的矩阵就是原矩阵的逆矩阵
2. 同模方程组也可使用高斯消元, 在除法时用乘逆元代替. 偶遇只有在模素数时, 非零数的逆元才唯一, 所以, 素数模才能保证有唯一解
3. 求解行列式的值.消成上三角矩阵就OK.
Expand#
- 由于在消元过程中需要用到除法, 所以会有浮点运算精度问题, 不同的消元顺序可能会导致较大的差异, 推荐使用绝对值较大的主元进行消元, 能达到比较好的效果
- 可以使用辗转相除法进行消元,这样做可以保证稀疏为整数.
多项式
基本概念#
给定一个数域 R , 变量 x , 一元多项式的形式是:
f(x)=n∑i=0aixi
其中 ai∈R , 并且 an≠0
多项式中次数最高的项称为首项,首项的系数等于1的多项式称作首一多项式
多项式加法: 对应次数系数做加法.例如:
f(x)+g(x)=n∑i=0(ai+bi)xi
多项式乘法: 两个多项式的每一项都相乘, 例如:
f(x)∙g(x)=n∑i=0n∑j=0aibjxi+j
- (1+x)n=∑ni=0(ni)xi
- n 个点可以唯一确定一个 n 次多项式
- 一个 n 次多项式有 n 个负数根
用牛顿迭代法求解方程的根
选择一个靠近多项式 f(x) 零点的点 x0 作为迭代初值, 计算 f(x0) 和 f′(x0) , 解方程:
[Math Processing Error]
其中 i1,i2,⋯ 是一个 n -的排列, ij 表示将 j 位置上的元素换到了 ij 位置.这样一个变换称作 n 次置换, 形成的群称作 n 次置换群. 所有的 n 次置换形成的群记做 Sn ,例如 [Math Processing Error]
还有一种表示置换的方法,若 (i1,i2,⋯,ik) 满足 f(ij)=ij+1 , 则称 (i1,i2,⋯,ik) 为一个循环节, 显然, 一个置换可以拆成若干个循环节,所以可以将置换用循环节表示.
例如 S3 在这种情况下可以表示为 S3=(1)(2)(3),(1)(2,3),(1,2)(3),(1,2,3),(1,3,2),(1,3)(2)
群作用#
设 G 为群, S 为集合,考虑一个映射.
G×S→S
(g,x)⟼g∘x
若此映射满足:
(a) 1G∘x=x,∀x∈S
(b) (gh)∘x=g∘(h∘x),∀x∈S,∀g,h∈G
则成映射 ∘ 是 G 上的一个群作用
S3 在 T=a,b,c 上有群作用 ∘ :
S3×T→T
(f,t)⟼f∘t=f(t)
例如对于 f=(123 231) , f∘a=f(a)=b,f∘b=f(b)=c,f∘c=f(c)=a
其他的内容
群作用相关
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具