我有一个由以下各项组成的列表的列表(列始终为5):
(
(1 3 2 4 5)
(2 5 1 3 1)
(0 8 1 2 2)
...
)
Run Code Online (Sandbox Code Playgroud)
我想获得另一个清单
在上面的示例中,结果将是:
(
(-1 -2 1 1 4)
(2 -3 0 1 -1)
...
)
Run Code Online (Sandbox Code Playgroud)
第一个列表(-1 -2 1 1 4)是在原始输入中获取第一和第二个列表的结果
(1 3 2 4 5)
(2 5 1 3 1)
然后减去具有相同索引的元素
(1-2 3-5 2-1 4-3 5-1)
等等。
我怎样才能做到这一点?
要使用成对的相邻元素,可以传递map两个集合:原始集合和其自身的偏移版本:
(defn diffs [xs]
(map #(map - % %2) xs (rest xs)))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
82 次 |
| 最近记录: |