gpt4 book ai didi

ruby - 检查数组的元素大小是否相同

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

是否有一种最佳且有效的方法来检查数组的元素是否具有相同的大小?

[[1,2], [3,4], [5]] => false

[[1,2], [3,4], [5,6]] => true

我得到的:

def element_of_same_size?(arr)
arr.map(&:size).uniq.size == 1
end

另一种解决方案:

def element_of_same_size?(arr)
arr[1..-1].each do |e|
if e.size != arr.first.size
return false
else
next
end
end
return true
end

当它发现一个元素与第一个元素的大小不同时,它会立即返回 false。

有没有最好的方法来做到这一点? (当然……)

最佳答案

使用 Enumerable#all? 怎么样?方法?

def element_of_same_size?(arr)
arr.all? { |a| a.size == arr.first.size }
end

element_of_same_size?([[1,2], [3,4], [5]])
# => false

element_of_same_size?([[1,2], [3,4], [5, 6]])
# => true

关于ruby - 检查数组的元素大小是否相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18129959/

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