Skip to content

Instantly share code, notes, and snippets.

@kareemgrant
Created May 23, 2015 19:01
Show Gist options
  • Save kareemgrant/0ba61a02a9ff8cfcef7c to your computer and use it in GitHub Desktop.
Save kareemgrant/0ba61a02a9ff8cfcef7c to your computer and use it in GitHub Desktop.
require 'benchmark'
numbers = (1..9999).to_a.shuffle << 9999
def find_duplicate_hash_store(numbers_array)
checked_numbers = {}
numbers_array.each do |number|
return number if checked_numbers[number] != nil
checked_numbers[number] = number
end
'no duplicate found'
end
def find_duplicate_array_store(numbers_array)
checked_numbers = []
numbers_array.each do |number|
return number if checked_numbers.include?(number)
checked_numbers << number
end
'no duplicate found'
end
Benchmark.bm(7) do |x|
x.report("hash_store ") { find_duplicate_hash_store(numbers)}
x.report("array_store") { find_duplicate_array_store(numbers)}
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment