gpt4 book ai didi

arrays - 将数组拆分为 n、m、o 组或更多组

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

有什么方法可以像这样拆分数组吗?

[1, 2, 3, 4, 5, 6, 7, 8, 9].split(3, 4, 2)
#=> [[1, 2, 3],[4, 5, 6, 7],[8, 9]]

最佳答案

带有 λ 的不可变版本:

▶ splitter = ->(array, *parts) do 
parts.reduce([[], 0]) do |acc, i|
right = acc.last + i
[acc.first << (acc.last...right), right]
end.first.map { |r| array[r] }
end
#⇒ #<Proc:0x0055ae3d9ae7c8@(pry):18 (lambda)>
▶ splitter.((1..9).to_a, 3, 4, 2)
#⇒ [[1, 2, 3], [4, 5, 6, 7], [8, 9]]

关于arrays - 将数组拆分为 n、m、o 组或更多组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45982511/

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