字节-火山-AI应用开发工程师-一面

时长1h

1.自我介绍

2.实习经历+项目(持续了大概20min)

3.coding部分(持续20min)

3.1 三个线程按顺序打印abcabc(因为用Go,所以写得很快,然后写太快了就奖励再来一题。。。)

3.2 在最多删除一个字符的前提下,判断是不是回文字符串

——————————————————————————————————————————————————————————

八股环节

4.索引设计的原则

答:

  • 最左匹配原则(联合索引/复合索引会按照字段的顺序构建B+树,查询时只有匹配‘最左前缀’才能命中索引)
  • 高度区分原则
  • 避免过度索引:每增加一个索引,会增加磁盘空间的占用,会降低INSERT/UPDATE/DELETE的性能,只给常用查询条件的字段增加索引
  • 短索引原则:索引字段的长度越短,索引树的节点能存储的索引项越多,IO次数越少,查询速度越快
  • 覆盖索引原则:查询的字段都包含在索引中,MySQL无需回表查询原数据
  • 避免在索引字段上做函数/运算
  • 5.每一行都能设置索引吗,为什么(Mysql中给每个列表都建立索引的情况)

    答:

    不行

    索引的本质是“按字段构建”,而非“按行设置”

    1. 性能代价远大于收益,写入性能暴跌:每执行一次INSERT/UPDATE/DELETE,所有索引都需要同步更新。(比如表有 10 个索引,修改一行数据需要更新 10 棵 B + 树)
    2. 磁盘空间浪费
    3. 低区分度字段建索引无意义

    6.Mysql中索引失效的情况

    答:

    • 违背“最左匹配原则”
    • 索引上使用函数/运算
    • 使用范围插叙后,右侧索引失效(联合索引)
    • 使用模糊匹配
    • OR连接的条件中,有字段无索引
    • 使用 NOT IN/!=/NOT EXISTS(不等于操作)
    • 索引字段为NULL
    • 数据分布导致优化器放弃索引
    • 联合索引中,字段类型不匹配(隐式转换)

    7.Mysql中什么时候会进行回表查询

    答:

    使用二级索引查询,但所需要的字段超出索引范围

  • 联合索引未命中全部字段,但查询需要非索引字段
  • 索引失效时,不会回表(直接全表插叙)
  • 8.Mysql索引是如何存放的

    答:

    Innodb 数据和缩影都存放在同一个.ibd文件中

    Innodb是存放在默认的共享表空间中(innodb_file_table = OFF)

    分开存储,分别存放在独立的.ibd文件中

    9.redis为什么快

    答:

    • 单线程模型,规避性能损耗,仅用一个线程处理所有客户端的读写请求,避免了多线程的两大核心开销
    • 纯内存操作:Redis所有的数据都存储在内存中
    • 网络模型:IO多路复用,让单线程能够同时监听多个客户端连接,实现非阻塞IO

    10.Http的加密过程

    答:

    • 客户端发送第一个TLS包:包含客户端所支持的TLS版本,所有的加密套件
    • 服务端收到后,确定基本规则:TLS版本
    • 服务端向客户端发送数字证书
    • 客户端校验数字证书通过后,用证书中的公钥加密发送给服务端(非对称加密)
    • 双方改加密规范,互相验证,开始对称加密传递数据

    11.Go的chanel,对已经关闭的channel进行读写有什么问题吗?

    12.Go的GMP模型

    答:

    G:Goroutine

    M:内核线程,每一个m都有一个特殊的g0,负责协程调度和切换,goroutine必须绑定到M上才能正常运行

    P:Processor,包含goroutine本地队列,队列长度256,当有goroutine创建的时候,会将其添加到P的队列中,如果满了,就会维护到全局队列中。

    13.反问环节

    #牛客AI配图神器#

    #面试问题记录##我的求职进度条#
    全部评论
    同阶段的牛友们都在春招专题里交流进度,看看别人情况心里就有底啦 👉 https://www.nowcoder.com/link/chunzhaoji2610
    点赞 回复 分享
    发布于 04-16 11:50 北京
    m
    点赞 回复 分享
    发布于 04-16 07:52 北京
    彭于晏冲浪强度好高hhh,实力也是很强
    点赞 回复 分享
    发布于 04-16 02:53 安徽
    你这复盘整理的太好了
    点赞 回复 分享
    发布于 04-15 18:29 陕西

    相关推荐

    昨天 23:48
    西北大学 Java
    点赞 评论 收藏
    分享
    04-16 04:30
    门头沟学院 Java
    感觉面完人都通透了,还是太菜了,下去沉淀一下1.实习项目相关问题2.介绍智能客服系统中你的负责部分、面临的问题及解决方案。3.如何解决大模型在客服场景中的幻觉问题?4.是每个场景对应多个 Agent?5.新架构是否存在泛化性损失问题?如何处理新活动规则等未见过的知识注入?6.Expert Agent 是以什么维度划分的?7.新架构的 AB 测试指标提升具体来自哪些模块?8.如何从线上真实对话构造Expert Agent 的 SFT 训练数据?9.Expert Agent 的 prompt 主要输入有哪些?模型输出是什么?10.Expert Agent 是否有预设工作流(workflow)和任务描述?11.Expert Agent 的评价指标(出商品率、商品正确率)具体如何定义和获取评测数据?12.智能客服 Chatbot 是否面临多轮对话中信息遗忘、流程偏离、回复机械感的问题?如何应对?13.如何优化多智能体系统(MAS)中各 Agent 的协作,避免局部优化但整体效果不佳?14.多智能体系统中如何设计奖励函数促进 Agent 协作而非竞争?八股1.什么是优势函数?2.PPO 中需要训练哪几个模型?3.PPO 中参考模型的作用是什么?4.什么是 Reward Hacking?有哪些缓解 / 优化方案?5.智能对话多轮场景中,attention 机制的局限性是什么?有哪些优化思路?手撕:排序K个升序链表
    查看19道真题和解析
    点赞 评论 收藏
    分享
    评论
    15
    52
    分享

    创作者周榜

    更多
    牛客网
    牛客网在线编程
    牛客网题解
    牛客企业服务