Array Ruby

class Array
  def shuffle!
    each_index do |i|
      j = rand(length-i) + i
      self[j], self[i] = self[i], self[j]
    end
  end
  def shuffle
    dup.shuffle!
  end
end