module Spruz::Shuffle

Public Instance Methods

shuffle() click to toggle source
# File lib/spruz/shuffle.rb, line 11
def shuffle
  dup.shuffle!
end
shuffle!() click to toggle source
# File lib/spruz/shuffle.rb, line 3
def shuffle!
  (size - 1) .downto(1) do |i|
    j = rand(i + 1)
    self[i], self[j] = self[j], self[i]
  end
  self
end