用法:
reduce(op, itr; [init])使用給定的二元運算符 op 減少給定的集合 itr 。如果提供,初始值 init 必須是為空集合返回的 op 的中性元素。未指定init 是否用於非空集合。
對於空集合,需要提供 init,但某些特殊情況除外(例如,當 op 是 +、*、max、min、&、| 之一時)當 Julia 可以確定 op 的中性元素時。
某些常用運算符的縮減可能有特殊實現,應改為使用:maximum(itr)、minimum(itr)、sum(itr)、prod(itr)、any(itr)、all(itr)。
減少的關聯性取決於實現。這意味著您不能使用像 - 這樣的非關聯操作,因為不確定 reduce(-,[1,2,3]) 是否應該被評估為 (1-2)-3 或 1-(2-3) 。使用   或 foldl   來保證左或右關聯性。foldr 
一些操作會累積錯誤。如果減少可以分組執行,並行性會更容易。 Julia 的未來版本可能會改變算法。請注意,如果您使用有序集合,則元素不會重新排序。
例子
julia> reduce(*, [2; 3; 4])
24
julia> reduce(*, [2; 3; 4]; init=-1)
-24相關用法
- Julia redirect_stdio用法及代碼示例
- Julia rem用法及代碼示例
- Julia readchomp用法及代碼示例
- Julia readuntil用法及代碼示例
- Julia replace!用法及代碼示例
- Julia real方法用法及代碼示例
- Julia readlines用法及代碼示例
- Julia replace()用法及代碼示例
- Julia retry用法及代碼示例
- Julia read用法及代碼示例
- Julia reverseind用法及代碼示例
- Julia reim用法及代碼示例
- Julia repeat方法用法及代碼示例
- Julia readline用法及代碼示例
- Julia repeat用法及代碼示例
- Julia repr方法用法及代碼示例
- Julia reverse!用法及代碼示例
- Julia reshape用法及代碼示例
- Julia replace方法用法及代碼示例
- Julia repeat()用法及代碼示例
- Julia reverse方法用法及代碼示例
- Julia resize!用法及代碼示例
- Julia readeach用法及代碼示例
- Julia reverse()用法及代碼示例
- Julia rest用法及代碼示例
注:本文由純淨天空篩選整理自julialang.org 大神的英文原創作品 Base.reduce — Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
