Module: Expertsort::BogoSort

Included in:
Array
Defined in:
lib/expertsort/sorts/bogosort.rb

Instance Method Summary collapse

Instance Method Details

#bogosortObject



3
4
5
# File 'lib/expertsort/sorts/bogosort.rb', line 3

def bogosort
  self.dup.bogosort!
end

#bogosort!Object



7
8
9
10
# File 'lib/expertsort/sorts/bogosort.rb', line 7

def bogosort!
  self.shuffle! while !sorted?
  self
end

#sorted?Boolean

Returns:

  • (Boolean)


12
13
14
# File 'lib/expertsort/sorts/bogosort.rb', line 12

def sorted?
  each_cons(2).all? { |a, b| (a <=> b) <= 0 }
end