algorithm - 证明递归行列式的复杂性

标签 algorithm recursion complexity-theory determinants

我想证明为什么拉普拉斯行列式或递归算法的复杂度是n!。任何人都可以为我证明吗?我不知道它怎么会是 n!,因为等式 T(n)=nT(n-1)+3n-1 只涉及乘法和添加。

最佳答案

尝试展开:

T(n) = n T(n-1) + 3n-1 = 
       n ((n-1)T(n-2) + 3(n-1)-1) + 3n-1 =
       n (n-1) T(n-2) + 3 n (n-1)  - n + (3n - 1)

现在通过归纳你可以证明(如果 T(1) = 1):

T(n) = n (n-1) (n-2) ... 1 + 3(n + n (n-1) + ... + n!) - 
      (1 + n + n (n-1) + ... + n (n-1) ... n * (n-1) * ... * (n-2)) 
     = Theta(n!)

关于algorithm - 证明递归行列式的复杂性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58520395/

相关文章:

algorithm - 阵列中最深坑的困惑

快速排序不能变成稳定排序吗?

java - 给定一个长度和一组字符,如何得到所有可能的字符串组合

c++ - 有没有办法在数学上解决 UVA 417?

c - 尝试计算函数的时间和存储复杂度 (C)

c++ - 如何解决由递归函数引起的堆栈溢出错误? C++

c++ - 启用 c++11 时 c++ 递归模板的奇怪行为

python - 如何创建一个函数(迭代/递归)来运行 Python 中的元组字典?

algorithm - 我对幂函数中的递归感到困惑

c - 在 O(n) 中删除字符串中的空格