首页 > 代码库 > 海量文本信息查Top-k
海量文本信息查Top-k
问题描述:
有1千万条短信,一条一行,有重复。在5分钟之内,找出重复出现的前10条。
方案一:
1.分组进行边扫描边建散列表。建立哈希表,使用头,尾和中间随便两个字节作为Hash Code, 插入到Hash table中,并记录其地址和重复次数。
2.hash code同且等长-》判定为疑似相同。然后hash table统计重复次数。
3.用线性时间选择在O(n)级别上完成前10条的寻找。
方案二:
1.按照长度短-》长进行处理。
2.按照长度进行分组,每组通过头尾中间粗略判断相等,找出每组的top10。
3.从各次top10结果中找到备选的top10,然后再精确搜索找到真正的top10。
方案三:
1.采用内存映射,加载文本。
2.建立字典树,统计top10个字符串。
海量文本信息查Top-k
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。