我正在尝试使用Laplace formula构建一个递归函数来计算行列式。
function y=detm(M)
n=length(M);
if n==2
y=M(1,1).*M(2,2)-(M(1,2).*M(2,1));
else
for i=1:n
y=sum(((-1)^(1+n).*M(1,n).*detm(M([1:n-1,n+1:end],[1:n- 1,n+1:end]))));
end
end
问题在于我无法找到省略for循环的方法,因为我需要在从1到n的列上运行。 有没有办法在同一个函数中执行它,或者我需要创建另一个递归函数?