|
|
【答案】应助回帖
上万维的矩阵求逆,资源需求涉及两个方面:
1. 内存, Matlab适合作小型问题的Prototype, 这类大型的,如果还能稀疏,最好用专门的C++工具(库),有开源的可以自己找;
2. 效率, 如果没有实际算过大型的矩阵相乘可能不知道, 1000维的整数矩阵相乘,用C++都要10多秒; 用Matlab计算, 相同的问题, 效率低到让你受不了; 所以, 效率优先时, C++仍然是首选;
用C++的另外一个原因当然是因为, 大多数人更熟悉C++, 而且开源的相应的库很容易找到; 如果你正好熟悉Fortran, 那自然更好不过了;
矩阵如果的确有稀疏的特征,一定要优先考虑找能够处理稀疏矩阵的库; 也是因为资源稀缺方面的原因;
此外就是算法,具体实施中会有很多莫名其妙的因素, 所以,实际应用中 *** 不建议自己写源代码*** 如果能够写好, 不妨跟现成的库作比对,效率和稳定性方面往往会差别巨大; -- 即,这类问题涉及的具体实施, 不能只学了点算法的皮毛就"想当然"以为会如何如何. 很多细节和技巧,直接从目前为止的书上是学不来的. |
|