我需要以指定大小的块来反转数组。以下是需要发生的事情的示例:
chunk = 2
arr = [1,2,3,4,5]
如何构建一个像这样反转块的数组:
[2, 1, 4, 3, 5]
我的代码:
arr.each_slice(chunk) { |a| p a }
输出:
[1,2]
[3,4]
[5]
上面的每个块都需要反转并附加到最终数组中,如上所示。
答案 0 :(得分:2)
arr = [1,2,3,4,5]
arr.each_slice(2).flat_map(&:reverse)
# => [2, 1, 4, 3, 5]