我最近遇到了这个采访问题:
Given a continuous twitter feed, design an algorithm to return the 100 most
frequent words used at this minute, this hour and this day.
Run Code Online (Sandbox Code Playgroud)
我正在考虑一个系统,其哈希映射word -> count链接到当前分钟,小时和日期的3分钟堆.
每个传入的消息都被标记化,消毒并且在哈希映射中更新了单词计数(如果单词已经存在,则在堆中增加键)
如果堆中不存在任何单词(并且堆大小== 100),请检查它们是否frequency > min value在堆中,如果是,则先解压缩并插入堆中.
有更好的方法吗?