Skip to content

Instantly share code, notes, and snippets.

@siong1987
Created November 16, 2011 04:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save siong1987/1369278 to your computer and use it in GitHub Desktop.
Save siong1987/1369278 to your computer and use it in GitHub Desktop.
base62 convertor in ruby
require 'rubygems'
require 'benchmark'
require 'alphadecimal'
time = Benchmark.measure do
1_000_000.times do |i|
encode = i.alphadecimal
decode = encode.alphadecimal
raise "Assertion error!" unless i == decode
end
end
puts time # 17.060000 0.050000 17.110000 ( 17.507562)
require 'rubygems'
require 'benchmark'
require 'base62'
time = Benchmark.measure do
1_000_000.times do |i|
encode = i.base62_encode
decode = encode.base62_decode
raise "Assertion error!" unless i == decode
end
end
puts time # 9.600000 0.020000 9.620000 ( 9.802189)
require 'rubygems'
require 'benchmark'
require 'radix62'
time = Benchmark.measure do
1_000_000.times do |i|
encode = i.encode62
decode = encode.decode62
raise "Assertion error!" unless i == decode
end
end
puts time # 19.070000 0.040000 19.110000 ( 19.483596)
require 'rubygems'
require 'benchmark'
require 'yab62'
time = Benchmark.measure do
1_000_000.times do |i|
encode = i.encode62
decode = encode.decode62
raise "Assertion error!" unless i == decode
end
end
puts time # 0.550000 0.000000 0.550000 ( 0.605562)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment