面灵AI→

快手 Feed 团队后端实习一面(约50分钟)

轮次
一面
时间
2026-09
来源
牛客网

《面试题目》

  1. 自我介绍。
  2. 实习项目深挖。
  3. 你对 AI Coding 的理解和使用情况。
  4. 算法题:HOT100 的 LC21,合并两个有序链表(ACM 模式,需自己处理输入输出)。
  5. 反问。

《参考解析》

实习项目深挖这一小时的准备方式:面试官问项目只有三种走法——问你做了什么、问你为什么这么做、问你哪里做错了。所以要提前把简历上的每段实习拆成三份材料:一份是 90 秒的骨架版本(业务背景一句话、你的职责一句话、结果量化一句话),用来开场;一份是技术细节(关键接口的 QPS/数据量、存储选型、遇到的竞态或超时问题、压测数据),用来接追问;一份是失败与取舍(哪个方案上线后回滚了、哪个优化收益不如预期、如果重做会怎么改),用来接「你觉得哪里还能更好」。Feed 这类业务天然关心读扩散与写扩散的取舍、缓存与热点、分页与深分页、消息队列的削峰与幂等,如果你的实习正好在这条线上,把「一条 Feed 从写入到被用户看到」这条链路讲完整是最高性价比的准备。忌讳把项目讲成产品说明,也忌讳所有数字都是「提升很多」。

AI Coding 的理解与使用怎么答才能加分:这题在实习面里出现频率越来越高,面试官想判断两件事:你是不是只会让 AI 生成代码,以及你会不会为 AI 的产出负责。有效的答法是讲清边界与流程:把 AI 用在哪些环节(读陌生代码、写测试、生成样板、排查报错、写 SQL 与正则)、不用在哪些环节(涉及线上数据与权限的操作、核心链路的关键逻辑需要自己写或逐行 review)。然后给一个具体例子:某次让 AI 生成的实现漏掉了并发下的边界(或者对空输入/超长输入处理不对),你是通过补测试用例发现的,最后改成了什么写法。再补一句你怎么做验证——要求 AI 列出它依赖的关键假设,然后针对这些假设设计用例;以及怎么控制上下文,阶段性整理状态而不是把几千字对话一直背着。绝对不要答「AI 写的我基本直接复制」,也不要答「我不用 AI」,前者显得没有判断力,后者显得脱节。

LC21 在 ACM 模式下为什么会卡 20 分钟:核心代码两分钟写完,剩下的时间全花在输入输出上,这是 ACM 模式的典型陷阱。链表题要先读第一行拿到两个链表的节点数(或者读到行尾),再按空格切分依次构造节点并串起来,最后遍历结果链表输出。要处理的实际问题包括:题目是否给了链表长度、是否可能有空链表(长度为 0)、输入是一行还是多行、输出用什么分隔、是否要求保留头结点。写的时候别用 Scanner 逐个 nextInt() 这种慢 IO,Java 侧用 BufferedReader + StringTokenizer(或 StreamTokenizer)一次读进来再切;C++ 侧用 scanf 或关掉同步的 cin;Python 侧用 sys.stdin.read().split() 一次读完再按指针推进,比 input() 循环快得多。常见实现骨架如下:

import sys

def merge(a, b):
    dummy = cur = ListNode(0)
    while a and b:
        if a.val <= b.val:
            cur.next, a = a, a.next
        else:
            cur.next, b = b, b.next
        cur = cur.next
    cur.next = a or b
    return dummy.next

data = sys.stdin.read().split()

准备阶段最有效的一招是:面试前用目标平台的 ACM 模板做两三道题,把「读入 → 构造 → 求解 → 输出」整条链路跑顺一遍,只练核心代码在真机上一定会翻车。

ACM 模式为什么容易翻车,怎么提前防:和 LeetCode 的核心代码模式相比,ACM 模式多出四类不确定性——输入格式(一行多个数、多组测试数据、以 0 或 EOF 结束)、数据规模(决定要不要用快读、会不会卡常数)、输出格式(行尾空格、多组结果之间要不要空行)、以及链表/树这类需要自己建的数据结构。防的办法是固定一套自己的模板:快读函数、链表与二叉树的构造函数、以及一个「先打印解析后的输入再打印答案」的调试开关。另外要养成先手写两个样例(含边界:空链表、两个链表一长一短、值全相等)再提交的习惯,面试时也可以主动跟面试官确认「输入是单组还是多组」,这既省时间也显得严谨。

反问 Feed 后端实习该问什么:这个岗位值得问清三件事。一是实习生的真实工作内容——是接独立的模块、做数据统计类需求,还是给正式员工打下手改 bug,直接问「上一个实习生主要做了什么、他的产出最后上线了吗」最容易得到实话。二是团队的技术栈与业务边界——Feed 的后端会涉及推荐、存储、推送等多条链路,问清你会在哪一段、能和哪些团队协作。三是转正与考核节奏——转正比例、考核周期、是否有明确的转正标准,如果有 HC 不确定性也要问出来。不建议在初面就问加班和薪资,那些留给 HR 面;也不要把反问变成「有什么想问我的吗」的空白,提前准备两三个问题,即使前面聊得很顺也不要跳过这个环节。