gpt4 book ai didi

ruby - 重复一个序列并将其与数组交错

转载 作者:数据小太阳 更新时间:2023-10-29 08:26:55 25 4
gpt4 key购买 nike

我有一个这样的数组:

array = ['1','a','2','b']

我想做成这样:

['x', '1', 'y', 'a', 'x', '2', 'y', 'b']

我试了好几个小时都没有结果。我最好的尝试是:

a = array.each_with_index do |val, index|
case index
when index == 0
a.insert(index, 'x')
when index.odd?
a.insert(index, 'x')
when index.even?
a.insert(index, 'y')
end
end

最佳答案

你可以使用 Enumerable 中的方法做这样的事情模块:

ary = ['1', 'a', '2', 'b']
xy = ['x', 'y']

ary.zip(xy.cycle)
# => [["1", "x"], ["a", "y"], ["2", "x"], ["b", "y"]]

ary.zip(xy.cycle).flat_map(&:reverse)
# => ["x", "1", "y", "a", "x", "2", "y", "b"]

关于ruby - 重复一个序列并将其与数组交错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27944971/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com