关于优先队列的应用场景
老师,关于优先队列的应用场景,除了处理数据流和海量数据的Top K问题,其他的像排行榜,热度榜单是不是也可以应用优先队列?提到这里我就想到了,redis的数据结构中的zset,但它的底层实现是跳表。两者之间有没有什么相似之处呢
31
收起
正在回答
1回答
1)
是的,其实排行榜,热度榜这种榜单,本质就是 topK 问题:)
2)
个人认为,跳表和优先队列(堆)的可比较性不大,和红黑树,B 树等,可比较性更大。
这是因为,优先队列除了可以快速的获取最大(最小)元素,删除最大(最小)元素之外,支持的其他操作都非常有限。
相较而言,无论是红黑树,B 类树,还是跳表,都可以更灵活的支持很多其他操作,比如:查找任意元素;查看元素的前驱,后继;区间查询;删除任意元素;等等。
继续加油!:)
相似问题
登录后可查看更多问答,登录/注册
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星