📌  相关文章
📜  从 Julia 中的给定数组索引中获取下一个真值 |数组 findnext() 方法

📅  最后修改于: 2022-05-13 01:55:36.593000             🧑  作者: Mango

从 Julia 中的给定数组索引中获取下一个真值 |数组 findnext() 方法

findnext()是 julia 中的一个内置函数,用于返回指定数组 A 的真元素的 i 之后或包含 i 之后的下一个索引,如果未找到真值,则返回零。这里索引或键的值从 1 开始,即第一个元素的索引是 1,第二个元素的索引是 2,依此类推。

示例 1:

# Julia program to illustrate 
# the use of Array findnext() method
  
# Finding index of next true value coming 
# after or including index 1 from 
# the 1D array A
A = [false, true, true, false]
println(findnext(A, 1))
  
# Finding index of next true value coming 
# after or including index (1, 1) from
# the 2D array B of size 2 * 2
B = [false false; true false]
println(findnext(B, CartesianIndex(1, 1)))
  
# Finding index of next true value coming 
# after or including index (1, 2, 1) from
# the 3D array C of size 2 * 2*2
C = cat([false false; true false], 
        [false true; true false],
        [true false; true true], dims = 3)
println(findnext(C, CartesianIndex(1, 2, 1)))

输出:

示例 2:

# Julia program to illustrate 
# the use of Array findnext() method
  
# Finding index of next even value coming 
# after or including index 1 from 
# the 1D array A
A = [1, 2, 5, 6]
println(findnext(iseven, A, 1))
  
# Finding index of next even value coming 
# after or including index (1, 1) from 
# the 2D array B of size 2 * 2
B = [3 5; 6 7]
println(findnext(iseven, B, CartesianIndex(1, 1)))
  
# Finding index of next even value coming 
# after or including index (1, 2, 1) from 
# the 3D array C of size 2 * 2*2
C = cat([1 2; 3 4], [5 6; 7 8], 
        [9 10; 11 12], dims = 3)
println(findnext(iseven, C, CartesianIndex(1, 2, 1)))

输出: