Created
May 30, 2015 23:03
-
-
Save rickarubio/99abbbf39d3c255fe609 to your computer and use it in GitHub Desktop.
Order of 1: O(1)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require 'benchmark' | |
def benchmark | |
time_in_seconds = Benchmark.realtime { yield } | |
time_in_milliseconds(time_in_seconds) | |
end | |
def time_in_milliseconds(time_in_seconds) | |
(time_in_seconds * 1000).to_s + ' ms' | |
end | |
one_million_elements = (1..1_000_000).to_a | |
ten_million_elements = (1..10_000_000).to_a | |
one_hundred_million_elements = (1..100_000_000).to_a | |
puts benchmark { one_million_elements[853_123] } | |
puts benchmark { ten_million_elements[8_853_123] } | |
puts benchmark { one_hundred_million_elements[92_853_923] } | |
# Here's an example of the output | |
# > ruby test.rb | |
# 0.0030390219762921333 ms | |
# 0.000693020410835743 ms | |
# 0.0005030306056141853 ms |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment