首页 > 解决方案 > 计算 n×n Hermitian 矩阵的最大特征值和相应的特征向量有多昂贵?

问题描述

有一个类似的问题:计算矩阵的特征值有多昂贵?

对于方形和对称矩阵,答案是 big-Oh(n^3)。

n×n矩阵的最大特征值和对应的特征向量呢?

在这里,我假设矩阵是正方形和 Hermitian。我认为它仍然必须比 big-Oh(n^3) 快,因为我们只对最大特征值和相应的特征向量感兴趣。

这是我目前使用的 Matlab 代码,但我认为它不是最好的,因为我仍然计算所有特征值而不是最大特征值并对它们进行排序。

A=2.*rand(3,3)-1*ones(3,3)+i*(2.*rand(3,3) -1*ones(3,3));
[v,e]=eig(A+A');
[d,ind] = sort(diag(e),'descend');
e=d(1)
v = v(:,ind);
v(1:3,1)

标签: matlablinear-algebracomplexity-theoryeigenvalueeigenvector

解决方案


尝试这个:

A=2.*rand(3,3)-1*ones(3,3)+i*(2.*rand(3,3) -1*ones(3,3));
[v,e]=eigs(A+A',1,'largestabs');

请告诉我进展如何!


推荐阅读