gpt4 book ai didi

ruby - 如何用不同长度的数组填充二维数组,使它们在 ruby​​ 中的长度都相同

转载 作者:太空宇宙 更新时间:2023-11-03 17:22:35 24 4
gpt4 key购买 nike

在我的 Ruby 脚本中,我目前有一个二维数组,其中的元素都是不同长度的数组。在这个例子中,为了简单起见,整数是每个相应数组的索引,可以被认为是所有字符串的实数值的占位符..

my_2D_array = 
[[1],
[1, 2, 3],
[1, 2, 3, 4, 5, 6, 7, 8],
[1, 2, 3, 4],
[1, 2],
[1, 2, 3, 4, 5],
[1, 2, 3, 4, 5, 6, 7, 8, 9],
[],
[1, 2, 3, 4, 5, 6],
[1, 2, 3, 4, 5, 6, 7]]

如何填充新的二维数组或操作现有的二维数组,以便所有数组的长度相同,并使用 nil 值填充新元素?像这样:

my_2D_array = 
[[1, nil, nil, nil, nil, nil, nil, nil, nil],
[1, 2, 3, nil, nil, nil, nil, nil, nil],
[1, 2, 3, 4, 5, 6, 7, 8, nil],
[1, 2, 3, 4,, nil, nil, nil, nil, nil],
[1, 2, nil, nil, nil, nil, nil, nil, nil],
[1, 2, 3, 4, 5, nil, nil, nil, nil],
[1, 2, 3, 4, 5, 6, 7, 8, 9],
[nil, nil, nil, nil, nil, nil, nil, nil, nil],
[1, 2, 3, 4, 5, 6, nil, nil, nil],
[1, 2, 3, 4, 5, 6, 7, nil, nil]]

最佳答案

l = my_2D_array.map(&:length).max
my_2D_array.each{|e| e[l - 1] ||= nil}

关于ruby - 如何用不同长度的数组填充二维数组,使它们在 ruby​​ 中的长度都相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28578211/

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