Eu preciso de um algoritmo recursivo para calcular o determinante da matriz n * n.
Respostas:
2 para resposta № 1O Método Padrão para calcular o determinante é Decomposição LU. Use uma biblioteca como LAPACK no código de produção. Não há absolutamente nenhum ponto em usar a recursão, a decomposição da LU é geralmente implementada resolvendo-se M = LU em forma fechada e assumindo operações O (n ^ 3).
2 para resposta № 2
Wikipedia tem uma fórmula para calcular os determinantes. Envolve permutações, que podem ser facilmente geradas recursivamente. O Google tem muitos resultados em "algoritmo de permutação".
2 para resposta № 3
Eu não vejo o ponto da recursividade aqui.
Esta operação matricial pode ser facilmente implementada em uma operação SIMD, pode ser dividida em threads, pode ser muito bem calculada na GPU.
A recursividade consome muita memória e alguns sistemas têm limites nas profundidades de recursão.
1 para resposta № 4
|a b c d ...|
det |...........|
|...........|
|...........|
= a * det(M1) - b * det(M2) + c * det(M3) - d * det(M4) + ... - ...
onde Mn é a Matriz restante se você soltar a primeira linha e a coluna n-ésima