Ruby计算数组中相邻的重复元素

时间:2014-08-28 14:38:55

标签: ruby arrays

给定一个数组,说%w[ a b c a a b b c c c]。该方法应返回3,因为它是相邻重复项的最大数量(3'c')

这是我到目前为止所提出的:

def check_quantity_of_same_adjacent_elements(array)
  max = 0
  array.each_index do |i|
    max += 1 if array[i] == array[i+1]
  end
  max
end

但它显然不起作用,因为它返回所有重复项的数量

1 个答案:

答案 0 :(得分:2)

%w[a b c a a b b c c c].chunk{|e| e}.map{|_, v| v.length}.max #=> 3