Octave中的折叠功能

时间:2014-04-06 19:16:52

标签: functional-programming octave reduce fold

Octave中的一维向量是否有折叠(缩小,聚合等)的标准实现? 如果不是,有没有办法在不使用循环语句的情况下表达折叠?

1 个答案:

答案 0 :(得分:2)

miscellaneous包提供函数reduce。例如,

octave:6> reduce(@(x,y)(x*y), [1:5])
ans =  120

如果查看reduce的源代码,您会发现它是一个相当简单的Octave函数,它使用for循环实现,因此它不会比使用您自己的for循环实现缩减。