hash - ruby一道循环算法题:不同ID出现次数
高洛峰
高洛峰 2017-04-21 11:18:21
0
1
608

需求:

从文件中统计不同ID在两种条件下出现的次数。

例如,文件中数据如下:

post  10001
get  10001
get  10002
post  10001
post  10002
...

在Ruby代码中用Hash保存取到的值:

data = Hash.new{|h, key| h[key] = []}
data[:post] << #value
data[:get] << #value
=begin 期待结果
data[:post] => [2, 1]。10001 的 post 出现次数:2;10002 的 post 出现次数:1
data[:get] => [1, 1]。10001 的 get 出现次数:1;10002 的 get 出现次数:1
=end

循环遍历文件,分别对不同ID的两种统计,如何达到正确的效果呢?


注:文件中ID不固定,有若干个,生成的相应形式为:

data[:post] => [2, 1, n] # n为ID的第n次出现
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(1)
伊谢尔伦

我建议这样


data[:post]=[]; data[:get]=[]
data[:post][value]+=1
data[:get][value]+=1
=begin 结果
data[:post][x] => post x 出现的次数
data[:get][x] => get x 出现的次数
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!