字节跳动 · TikTok

后端开发一面面经

完整信息

12 条问法 · 11 道题

本篇目录
JD偏Agent 项目深挖+计算机基础+手撕代码,时长约1小时。 \--- 项目拷打 如果处理超长内容(比如超长视频),你们是怎么设计方案的? 如果不同用户导入完全相同/内容相似的数据,你们系统是怎么去重/处理的? 项目有没有具体的效果评估指标和数据支撑?evaluation是怎么做的? 任务队列/异步任务处理框架为什么选择Celery?有没有跟其他方案做过对比? 详细讲一下你们整个任务分发-执行的流程设计。 如果worker在处理任务过程中执行到一半突然失败/宕机,你们系统是怎么处理这种异常情况的? 失败重试机制是怎么设计的?有没有做重试次数限制?会不会存在无限重试的风险? 八股 解释一下虚拟内存的概念,它是用来解决什么问题的? 什么是缺页中断?发生缺页中断之后系统是怎么处理的? 冒泡排序的时间复杂度是多少? 从理论上解释一下,为什么冒泡排序算法能够保证把数组正确排序?(要求给出严谨的正确性证明思路,而非只描述过程) 手撕:输出前10000个质数,编译器时间复杂度限制很严格,py暴力解和跳过偶数以及平分判断都超时。可能只能质数筛,或者用C++这类 \--- 整体感受:项目部分问得很细,会一路追问设计细节和边界case(去重、容错、评估),不是背版本能应付的;算法题看似简单但对代码实现速度和边界优化要求较高,建议提前刷熟质数筛法(埃氏筛/欧拉筛)相关变种,八股好久没背了基本上顺不出来,只有个印象。 面完一个小时就通知二面了,发面经攒攒后面运气
本篇目录
  1. 01
  2. 02
    如果不同用户导入完全相同/内容相似的数据,你们系统是怎么去重/处理的?
  3. 03
  4. 04
  5. 05
  6. 06
    追问
    如果worker在处理任务过程中执行到一半突然失败/宕机,你们系统是怎么处理这种异常情况的?
  7. 07
    追问
    失败重试机制是怎么设计的?有没有做重试次数限制?会不会存在无限重试的风险?
  8. 08
  9. 09
    追问
    什么是缺页中断?发生缺页中断之后系统是怎么处理的?
  10. 10
  11. 11
    追问
    从理论上解释一下,为什么冒泡排序算法能够保证把数组正确排序?(要求给出严谨的正确性证明思路,而非只描述过程)
  12. 12
    手撕:输出前10000个质数,编译器时间复杂度限制很严格,py暴力解和跳过偶数以及平分判断都超时。可能只能质数筛,或者用C++这类

相关公司