class My::SplitSequence

Public Instance Methods

new_group() click to toggle source

创建新的分组

# File lib/my/split_sequence.rb, line 23
def new_group
  raise NotImplementedError
end
split(seq) click to toggle source
# File lib/my/split_sequence.rb, line 6
def split(seq)
  result = []
  return result if seq.length == 0
  group = new_group
  group << seq[0]
  1.upto(seq.length - 1) do |i|
    unless succ?(group[group.length - 1], seq[i])
      result << group
      group = new_group
    end
    group << seq[i]
  end
  result << group
  result
end
succ?(a, b) click to toggle source

判断两个成员是否连续

# File lib/my/split_sequence.rb, line 28
def succ?(a, b)
  raise NotImplementedError
end