在一個在線課程中指出foldLeft
和foldRight
對於關聯和交換的運營商是等效的。foldRight與foldLeft相當於非對易關聯操作嗎?
其中一位學生堅持認爲,這些操作員只需要關聯。所以這個屬性應該適用於像函數組合和矩陣乘法這樣的操作。
至於我可以告訴關聯的操作,是不可交換不會產生相同結果foldLeft
和foldRight
除非z
是中性的,並且操作以這樣的方式積累的操作數的順序保持不變。在一般情況下,IMO的操作必須是可交換的。
list.foldLeft(z)(operation) == list.foldRight(z)(operation)
所以,foldLeft
和foldRight
等同應該operation
是同時聯想和交換還是不夠operation
進行關聯?
好的。將引用@ jwvh的字符串連接。 – Tim