如何检查m个大小的向量是否线性无关?

tun*_*nuz 20 math vector matrix linear-algebra

免责声明
这不是一个严格的编程问题,但大多数程序员很快或后来都要处理数学(特别是代数),所以我认为答案可能会对未来的其他人有用.

现在问题
我试图检查维数n的m个向量是否是线性独立的.如果m == n你可以使用向量建立一个矩阵并检查行列式是否为!= 0.但是如果m <n?

任何提示?


另见本视频讲座.

Dav*_*nak 22

构造向量矩阵(每个向量一行),并对该矩阵执行高斯消元.如果任何矩阵行取消,则它们不是线性独立的.

平凡的情况是当m> n时,在这种情况下,它们不能是线性无关的.

  • 您能否更好地解释您的解决方案?我应该对什么执行高斯消除? (2认同)

jas*_*son 7

构造一个矩阵,M其行是向量并确定其等级M.如果秩M小于m(向量的数量)则存在线性依赖性.在确定等级的算法中,M您可以在获得一行零后立即停止该过程,但运行算法完成后会增加提供向量的跨越集维度的额外资金.哦,确定等级的算法M仅仅是高斯消除.

注意数值不稳定.请参阅Numerical Recipes第二章开头的警告.