Class: My::SplitSequence
- Inherits:
-
Object
- Object
- My::SplitSequence
- Defined in:
- lib/my/split_sequence.rb
Instance Method Summary collapse
-
#new_group ⇒ Object
创建新的分组.
- #split(seq) ⇒ Object
-
#succ?(a, b) ⇒ Boolean
判断两个成员是否连续.
Instance Method Details
#new_group ⇒ Object
创建新的分组
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
判断两个成员是否连续
28 29 30 |
# File 'lib/my/split_sequence.rb', line 28 def succ?(a, b) raise NotImplementedError end |