- 0
- 0
- 约3.45千字
- 约 9页
- 2026-07-28 发布于河南
- 举报
抖音面试试题及答案
一、算法与数据结构题(总分100分)
1.题目:抖音后台需要实时统计当前直播间或全站的热门视频。给定一个包含视频ID和播放次数的日志流,设计一个数据结构,能够高效地统计每个视频的实时播放量,并支持快速查询当前播放量最高的TopK个视频。请描述你的数据结构选择及核心算法逻辑。
答案:
数据结构选择:使用哈希表来存储每个视频ID对应的播放次数(键值对),使用最小堆或有序映射(如Java中的TreeMap)来维护TopK的排行榜。
核心逻辑:
1.当接收到新的播放日志时,在哈希表中将该视频的播放次数加1。
2.如果使用最小堆维护TopK,当堆的大小超过K时,弹出堆顶元素(即当前播放量最小的视频)。
3.如果使用有序映射,则直接插入新数据,并删除超过K个的数据。
4.查询TopK时,直接遍历堆或有序映射的前K个元素即可。
2.题目:用户在刷抖音时,系统需要根据用户的历史行为序列(如点赞、评论、完播)来预测用户下一个可能感兴趣的视频类别。假设历史行为序列长度为N,请设计一个算法,找出用户行为序列中最长的“兴趣偏好窗口”,即连续N个行为中,用户对某一类别的偏好度最高,请给出具体的算法步骤。
答案:
算法步骤:
1.数据预处理:将用户的行为序列转换为数值向量,例如将“点赞”标记为
原创力文档

文档评论(0)