我很难想出程序可以找到矩阵秩的方法。特别是,我不完全理解如何确保程序能够捕获导致依赖关系的所有线性组合情况。
如何解决这个问题的一般想法是我感兴趣的。但是,如果您想将答案更进一步,我专门寻找仅与平方矩阵相关的解决方案。代码也将是C++的。
谢谢你的时间!
一般流程:
matrix = 'your matrix you want to find rank of'
m2 = rref(matrix)
rank = number_non_zero_rows(m2)
其中rref(matrix)
是一个函数,可以执行普通的高斯消除
number_non_zero_rows(m2)
是一个对非零条目的行数求和的函数
您对导致依赖关系的所有线性组合情况的担忧都可以通过rref
(高斯消除(步骤来解决。 顺便说一下,无论矩阵的尺寸如何,这都有效。