让我们有一个列表L的n元素。任务是交换此列表中的每两个元素。
L
n
[1,2,3,4,5,6]
[2,1,4,3,6,5]
[0,1,0,1]
[1,0,1,0]
code-golf
发布于 2021-11-10 17:13:59
f=lambda l:l and l[1::-1]+f(l[2:])
在网上试试!
当l是空的(这使得它是错误的),直接返回它。否则,反转前两个元素并对其余元素进行递归调用。
l
发布于 2021-11-10 17:48:19
r
yY
解释:
y # Uninterleave Y # Interleave
发布于 2021-11-10 23:37:16
f(a:b:c)=b:a:f c f x=x
https://codegolf.stackexchange.com/questions/237085
相似问题