Algorithm 求行列式的递归函数

Algorithm 求行列式的递归函数,algorithm,matlab,Algorithm,Matlab,我正试图构建一个递归函数来计算行列式 问题是我无法找到一种方法来忽略for循环的需要,因为我需要在从1到n的列上运行。 有没有办法在同一个函数中执行此操作,或者我需要创建另一个递归函数?问题是什么?循环本身并不坏,您可以使用它。为什么不使用det?@AnderBiguri这是我的任务为什么不使用另一个带参数i的递归函数?好的。那么你的问题到底是什么?我们不会回答“如何做”,因为这是家庭作业,但如果你澄清了你的问题和你想要什么,你可能会得到帮助。一个单独的递归函数,它代替了-循环的。此外,循环代码

我正试图构建一个递归函数来计算行列式

问题是我无法找到一种方法来忽略for循环的需要,因为我需要在从1到n的列上运行。
有没有办法在同一个函数中执行此操作,或者我需要创建另一个递归函数?

问题是什么?循环本身并不坏,您可以使用它。为什么不使用
det
?@AnderBiguri这是我的任务为什么不使用另一个带参数
i
的递归函数?好的。那么你的问题到底是什么?我们不会回答“如何做”,因为这是家庭作业,但如果你澄清了你的问题和你想要什么,你可能会得到帮助。一个单独的递归函数,它代替了-循环的
。此外,循环代码不依赖于似乎错误的
i
,每次它都会覆盖
y
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