如何对10亿个词语进行排序,找出频率最高的100个
(腾讯)10亿个32位的数据,放到4G的空间里,怎么找出只出现一次的数据的个数。
32位数据共有2^32个数,因此设置一个2^32大小的数组(4g)。遍历数据,把每一个数放到数组中对应下标的位置,个数加一。数组中最终值等于一的下标即为要找的数据。计算的过程中注意数据正负值和下标的对换。
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题