Class: My::SplitSequence

Inherits:
Object
  • Object
show all
Defined in:
lib/my/split_sequence.rb

Instance Method Summary collapse

Instance Method Details

#new_groupObject

创建新的分组

Raises:

  • (NotImplementedError)


23
24
25
# File 'lib/my/split_sequence.rb', line 23

def new_group
  raise NotImplementedError
end

#split(seq) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 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) ⇒ Boolean

判断两个成员是否连续

Returns:

  • (Boolean)

Raises:

  • (NotImplementedError)


28
29
30
# File 'lib/my/split_sequence.rb', line 28

def succ?(a, b)
  raise NotImplementedError
end