作者EdisonX (闭上眼的鱼)
站内Prob_Solve
标题[问题] 请教是否有快速判断可逆矩阵之演算法?
时间Fri Apr 6 15:30:52 2012
matrix 问题许多都基於一假设:可逆,
但若一些在复杂度较高之问题上,计算过程中才发现是不可逆,
便大大浪费了时间。
目前小弟验证可逆之方式为 :
(1) 先 allocate 一块新的 matrix ( 大矩阵就费时了 ), 此称 tmp_mat
(2) src_mat 复制到 tmp_mat , 避免破坏 (memcpy, 又费时).
(3) 对 tmp_mat 进行下三角化运算 , 判断是否有一列为零 ( 简单的说是求 det. )
请教在概念上,这是否算是唯一方法? ( 是否只剩从细结进行修改而已? )
谢谢各位不吝指导。
--
If there is no tomorrow,
I want to see u last time.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 180.177.76.161
1F:→ H45:这问题挺有意思的,让我检视最近写JAVA一直在用的Apache Commo 04/08 13:35
2F:→ H45:ns Math函式库,有定义Matrix类别的isSingular方法,演算法和 04/08 13:36
3F:→ H45:你的方法概念上完全一样,只是说做LU分解时,可以在内部回圈提 04/08 13:36
4F:→ H45:早发现有一行为零,马上跳离回圈可加速一些运算时间。 04/08 13:37
5F:→ EdisonX:目前我的方法便是 H45 提的,只是我想很多人会有经验, 对大 04/08 13:41
6F:→ EdisonX:矩阵而言,算了很久,最後跑出来竟然是Singular .. 04/08 13:42