我似乎无法绕过这种方法。如果我试图理解这段代码,我会说这些项被迭代并索引两次,以便有两个单独的迭代迭代。如果两个索引集合相同,则返回true,如果两个项目集合相同。
def duplicates?(array1)
array1.each_with_index do |item1, index1|
array1.each_with_index do |item2, index2|
next if index1 == index2
return true if item1 == item2
end
end
false
end
显然我错了,否则该方法总会返回true。我怎么弄错了?
答案 0 :(得分:1)
算法是
for each element in array
for each element in array
skip if indices match
return true if elements are the same
return false
非常简单。