【发布时间】:2023-03-07 21:20:01
【问题描述】:
给定一个列表
a = [0,1,2,3,4,5,6,7,8,9]
我怎样才能得到
b = [0,9,1,8,2,7,3,6,4,5]
也就是说,产生一个新的列表,其中每个连续的元素交替取自原列表的两侧?
【问题讨论】:
-
为什么不使用双端队列?!
l1=list(range(10)); d1=deque(l1); [d1.pop() if i%2 else d1.popleft() for i,_ in enumerate(l1) if d1]
标签: python algorithm list iteration