2013-05-10 65 views

回答

6

是的,有;速度!特别是对于大型阵列,find将显着更快。

想想看:操作A > val是在两种情况下是相同的,但

B = A(A > val) 
A

提取值,并把它们拷贝到一个新的数组B,这将有被分配并复制分配,并且临时将不得不销毁。

全部find(A>val, 1, 'first')确实是遍历逻辑列表,并在遇到第一个true值时返回单个数字;这比没有用的复制/分配等要少得多,因此速度要快得多。

作为一个经验法则,当你不find使用其他选项,逻辑索引几乎总是最好。当你需要或使用find的附加功能,该find选项几乎总是最好。

+0

谢谢!这正是我寻找的答案:-) – mlai 2013-05-11 13:22:47