开发者社区> 问答> 正文

如何计算Ruby数组中的重复元素

我有一个排序数组:

[ 'FATAL ', 'FATAL ', 'FATAL ' ] 我想得到这样的东西,但它不必是哈希:

[ {:error => 'FATAL ', :count => 2}, {:error => 'FATAL ', :count => 1} ] 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-09 11:39:20 551 0
1 条回答
写回答
取消 提交回答
  • 下面的代码打印你所提出的要求。我将让您决定如何实际使用生成所需的哈希值:

    sample array

    a=["aa","bb","cc","bb","bb","cc"]

    make the hash default to 0 so that += will work correctly

    b = Hash.new(0)

    iterate over the array, counting duplicate entries

    a.each do |v| b[v] += 1 end

    b.each do |k, v| puts "#{k} appears #{v} times" end 注意:我刚刚注意到您说数组已经排序。上面的代码不需要排序。使用该属性可能会产生更快的代码。

    2020-02-09 11:39:31
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载