當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Julia Array findprev()用法及代碼示例

這個findprev()是 julia 中的一個內置函數,用於返回指定數組 A 的真元素之前或包含 i 的前一個索引,或者如果沒有找到真值則返回零。這裏索引或鍵的值從 1 開始,即第一個元素的索引為 1,第二個元素的索引為 2,依此類推。

用法:
findprev(A, i)
or
findprev(predicate::Function, A, i)

參數:

  • A:指定數組
  • i:指定值
  • Predicate Function:根據指定的參數確定某事是真還是假

返回值:它返回指定數組 A 的真元素之前或包含 i 的前一個索引,如果沒有找到真值,則返回零。

範例1:




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

輸出:

範例2:


# Julia program to illustrate 
# the use of Array findprev() method
   
# Finding index of previous even value
# before or including index 3 from 
# the 1D array A
A = [1, 2, 5, 6]
println(findprev(iseven, A, 3))
   
# Finding index of previous even value
# before or including index (2, 2) from 
# the 2D array B of size 2 * 2
B = [3 5; 6 7]
println(findprev(iseven, B, 
        CartesianIndex(2, 2)))
   
# Finding index of previous even value 
# before or including index (2, 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(findprev(iseven, C, 
        CartesianIndex(2, 2, 1)))

輸出:




相關用法


注:本文由純淨天空篩選整理自Kanchan_Ray大神的英文原創作品 Get previous true value from a given array index in Julia | Array findprev() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。