我使用Jacobi方法在c代码中查找所有特征值和特征向量。虽然Jacobi方法的复杂性是O(n ^ 3),但我矩阵的维数很大(17814 X 17814)。这需要很多时间。我想知道一个更好的算法,通过它我可以解决这个问题。如果你愿意,我可以附上我的c代码。
答案 0 :(得分:2)
评论中建议的算法不一定是最好的算法 正如您所看到的here,使用特殊技术时,Jacobi方法可以大大加快 最重要的是,Jacobi很容易并行运行,稀疏矩阵比密集矩阵快得多,所以你也可以利用它,这取决于你的架构和矩阵的类型。
我说最好的方法是测试一些不同的方法,并在实践中看到哪些方法可以获得最佳效果。
O(n^2.376)
不一定比O(n^3)
更好,具体取决于常数。