我是一个 Ruby 的初学者。因此,我搜索了如何反转矩阵的方法。
1, 2, 3, 4 8, 9, 10, 11
4, 5, 6, 7 => 4, 5, 6, 7
8, 9, 10, 11 1, 2, 3, 4
我已经尝试过:
require 'matrix'
m = Matrix[ [1,2,3,4],[4,5,6,7], [8,9,10,11] ]
m_rev = Matrix.build(m.row_size, m.column_size){|row|
m.row_size.downto(0){|i|
row = m.row(i)
}
}
*
,它是无法正常工作的,请尝试m = Matrix[[1, 2], [3, 4]]; r = Matrix[m.to_a.reverse]; m.row_size == r.row_size
。m
有2行,而r
只有一行。也许他们在1.9中修复了这个问题,我无法检查。关于*
,我曾经回答过一个关于Ruby中有趣语法的问题,你可能会发现它有用。 - Miki