我有一段代碼用於考試,他們希望我爲了達到更好的成績而做的是在沒有第二個「爲「的聲明。Matlab - 爲矩陣的每一行減去一個向量而不用語句
的代碼是:
piv = 1:n; %// piv: position vector
for k = 1:n-1 %// for each column :
if ((max(abs(A(piv(k:n),k)))) > eps(normA)) %// if pivot is non zero
[~, I] = max(A(piv(k:n),k)); %// find the max index
I = I + (k-1);
piv([k,I]) = piv([I,k]); %// swap pivot elements
A(piv(k+1:n),k) = A(piv(k+1:n),k)/A(piv(k),k); %// calculate the multipliers and save them in the column
for j = k+1:n
A(piv(j),k+1:n) = A(piv(j),k+1:n) - (A(piv(k),k+1:n)*A(piv(j),k)); %// multiply for multipliers and subtract them by the row
end
end
end
這是高斯因式分解方法,但不要緊,這件事是我需要有沒有第二個爲e和j變量中相同的結果。
'Z = X - 那些(尺寸(X,1),1)* y' – user3528438
他們想要實現的Householder變換或吉文根據使用情況 – percusse