ruby 使用#include在Array和Hash中查找项目的基准?方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 使用#include在Array和Hash中查找项目的基准?方法相关的知识,希望对你有一定的参考价值。
require 'benchmark'
a = ('a'..'zzzzz').to_a
h = {}
a.each {|e| h[e] = :ok}
Benchmark.bmbm do |x|
x.report("find z in array") { a.include? 'z' }
x.report("find zz in array") { a.include? 'zz' }
x.report("find zzz in array") { a.include? 'zzz' }
x.report("find zzzz in array") { a.include? 'zzzz' }
x.report("find zzzzz in array") { a.include? 'zzzzz' }
x.report("find z in hash") { h.include? 'z' }
x.report("find zz in hash") { h.include? 'zz' }
x.report("find zzz in hash") { h.include? 'zzz' }
x.report("find zzzz in hash") { h.include? 'zzzz' }
x.report("find zzzzz in hash") { h.include? 'zzzzz' }
end
以上是关于ruby 使用#include在Array和Hash中查找项目的基准?方法的主要内容,如果未能解决你的问题,请参考以下文章
CF1204B Mislove Has Lost an Array
ruby 参考has_many和belongs_to相同的模型
Set.has() 方法 O(1) 和 Array.indexOf O(n) 吗? [复制]
ruby 小要点说明使用has_one而不是belongs_to来利用父传递
Ruby Array.collect 迭代器块中的条件
ruby 参考文献has_many