3
在對多個索引進行求和時,是否可以選擇編寫迭代層?替代Lisp中的層次迭代
在對多個索引進行求和時,是否可以選擇編寫迭代層?替代Lisp中的層次迭代
如果你有多維數組A
,可以遍歷其元素是這樣的:
(dotimes (i (array-total-size a))
(my-function (row-major-aref tmp i)))
或
(loop for x across (make-array len :displaced-to a) do
(my-function x))
或
(map nil #'my-function (make-array len :displaced-to a))
其中my-function
是函數,它可以完成你想要的單個數組元素。
此外,你可以看看array-row-major-index
。
非常感謝,這是非常有幫助的。 – category
也許你可以提供一個你想要的替代方案的例子。 –
一個人使用'loop' –