Julia: find 和其它

来源:互联网 发布:google翻译 for mac 编辑:程序博客网 时间:2024/03/28 17:58

一、有b =[1,2,2,3,4,6],如何找到b中的2值元素位置?

  几种常见的用法:

(1)find(b.==4)

  (2)   find(x->x==4,b)

  (3)   [1:length(b)][b.==4]

(4)collect(b)[b.==4]

   当然,或许还有其它的表达方式.不过,从效率上看,find的效率可能没有不用find的效率高。

   这个大家可能去实证。因为find实质是内置一个匿名函数,这种方式类似于闭包。

二、如何找到b 中能被2和3整除的值?

find((b%2).==0 | (b%3).==0)  # 注意不是“&”, 更不是“&&”

find(((b%2).==0) & ( (b%3).==0)) # 建议这种方式,语义更清楚,不能用 “&&”

三、如果找到了中或被2整除或被3整除的值?

find((b%2).==0 & (b%3).==0) # 注意不是“|”,更不是“||”

find(((b%2).==0) | ((b%3).==0))  # 建议这种方式,语议更清楚,不能用“||”

当然二和三,完全不用find的方式去表达,方式同一。

1 0
原创粉丝点击