- 0
- 0
- 约1.23万字
- 约 86页
- 2019-03-02 发布于浙江
- 举报
解决方案(续) 若两个人对话,保留上一个说话人的视频图像可以提供视觉上的连续性 为此,使用两条“多对多”VC: 一条VC :传输当前说话人的视频 另一条VC:传输上一次说话人的视频 4.10 找出资源使用大户 设备希望有一种简单的方法找到资源使用大户 简单的方法: 使用一个优先级队列(比如堆):若用户数量很大,在高速网络中不可接受 使用桶排序:若用户能够使用的资源数量很大,也不合适 问题 设计一个跟踪用户资源使用的模块,需要一个简单的方法找到消费最多资源的用户 设计者愿意放宽系统要求(P3b,牺牲精度换时间)不超过2倍,以换来速度的提升: 不要求找到精确的最大值,可以接受2倍以内的误差 比如,图中找到S4也可以 问题:在精度上放宽要求后,能否找到一个更有效的算法? 分析 设想: 由于放宽要求至2倍,可以将资源使用差异在2倍之内的用户聚合到一个“资源使用组”中 寻找最大用户变为寻找最大资源使用组 用户分组: 将资源使用数量在[2i, 2i+1-1]之间的用户划为一组 使用什么数据结构组织资源使用组? 二项式桶(P14,小规模问题使用高效的数据结构),第 i 个桶包含第 i 组的所有用户(i 是一个小整数) 解决方案 使用二项式桶,第 i 个桶包含资源使用在[2i , 2i+1-1]之间的所有用户,每个桶包含一组未经排序的资源使用记录 使用一个比特串,每位对应一个桶,某位置1表
原创力文档

文档评论(0)