首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

3阶以上行列式求值有非递归的算法吗?该如何解决

2012-02-12 
3阶以上行列式求值有非递归的算法吗?如题.递归的话效率太低了.[解决办法]消元法。行列式某一行某个数 加到

3阶以上行列式求值有非递归的算法吗?
如题.递归的话效率太低了.

[解决办法]
消元法。
行列式某一行 × 某个数 加到另外一行, 行列式的值不变。

利用这个把行列式变成 

a11 0 0 0 …… 0
a21 a22 0 0 …… 0
a31 a32 a33 0 …… 0
a41 a42 a43 a44 …… 0
…… …… …… …… ……
an1 an2 an3 an4 …… ann

的形式

则行列式的值等于 a11*a22*a33*a44*……*ann
[解决办法]
说递归的效率低不对,我觉得总有人把不用递归归罪于其效率低,这是错误的。因为递归导致的额外的函数调用开销几乎是可以忽略的。递归不能用的原因是“堆栈溢出”,对于三阶行列式几乎是不可能有问题的

至于三阶行列式本身,基本上我也没有见过谁真用递归做的,无一例外都应该是用楼上小火柴的做法

热点排行