美团平台java后端一面面经

昨天下午面的,到现在没消息估计是寄了。挣扎一下写个面经攒攒人品。

1. 介绍一下你自己
2. 手撕算法剑指 Offer 42. 连续子数组的最大和
3. 智力题:n个直线分割一个平面,写f(n)
1+n(n+1)/2
4. 智力题附加:n个角(一端顶点俩射线)分割一个平面,写f(n)
不会
5. 实习经历说一下
讲了把表的附加属性字段(需要经常添加的字段)分离出来,用一个字段json串存储,又建了一个附加表去对应字段,然后被狠狠问附加表和这个json字段冗余的存在意义。答得是方便后续像品牌增加属性的管理,以及前端做匹配需要这个表。
6. (前一问扯到mysql的表级锁)mysql用什么索引,只有表级锁么
InnoDB索引,颗粒度很高,表级锁行级锁意向锁间隙锁之类的都有。(后面又扯了一会儿这个附加表的价值,最后面试官觉得我的表架构他理解了,但是还是觉得没必要上这个冗余。。。。)
7. 问做过的索引优化
业务条件查询时,做了一个联合索引
8. 问InnoDB引擎查询sql语句时,怎么匹配
Select * from t where a=1,b=1,c=1
联合索引时遵循最左匹配原则,其中原理和索引的数据结构有关,B+树存储横向是先a再b再c
9. 问没有联合索引的情况下呢?普通索引
看主键索引,因为主键索引中叶子节点是存储了该数据所有字段信息的。
10. 那如果没有主键索引呢?
知识盲区
(后来看了一眼是优化器计算开销,看过但是忘了)
11. 写个sql吧,name主键,score字段,查这个表中分数第二高的人。

面试官人很好,气氛引导很轻松,中间一直在说没事,这是额外的问题。然后问业务的时候争论了一阵子,不知道好事坏事。最后没感谢我的时间,详细介绍了一下部门业务,以为会过的😭#你收到了团子的OC了吗##美团2024秋招#
全部评论
老哥啥时候面的
2 回复 分享
发布于 2023-08-29 14:27 广东
是什么部门啊?可以说嘛
点赞 回复 分享
发布于 2023-08-29 14:00 浙江
感觉是同一个面试官,问的问题很像
点赞 回复 分享
发布于 2023-08-30 10:22 上海
额外的问题
点赞 回复 分享
发布于 2023-08-30 13:50 四川
谢谢分享
点赞 回复 分享
发布于 2023-08-31 13:51 江苏

相关推荐

2024-11-11 10:55
华中科技大学 Java
(项目)1.简历上第=项目的一个思路?背景?能应用什么场景?2.分几个模块?3.说一下登录鉴权用的什么技术?4.大模型这边api对接了哪些?5.用了敏感词过滤,这么做的?6.微信支付的流程能大概介绍一下吗?(场景)7.设计一个本地缓存,要考虑哪些方面?(缓存淘汰,并发冲突,缓存和数据库的一致性(这里说了一大堆))8.有一个场景,数据库里维护了一份规则数据,搞了本地缓存,部署了两天机器,有个管理后台,把数据库数据修改,怎么让两台机器缓存数据变成最新的?(1.给缓存加一个小的过期时间;2.订阅mysql的binlog日志,通过主动的方式给本地缓存做一个更新)引出一堆小问题...9.接触过消息队列吗,我有一个场景,不用那些重的第三方框架,,设计一个轻量级的mq,只要简单的消费订阅,怎么自己搞一个?(1.简单的队列2.两端做阻塞式收放3.引入主题,主题内部设计双端队列4.给队列里面的数据编号,消费成功提交偏移量)引出一堆小问题...10.比如说有100万数据,这些数据需要定时更新,失败就要重试,要尽快完成,怎么设计一个程序?(使用消息队列,把要更新的消息放到队列里,在消费端进行一个更新,比如说kafka它消费失败就会重试,默认十次,要是真的消费失败放到死信队列里,可能会存在消息堆积,....,尽快完成的话通过加分区和消费者,并且在进程内部使用线程池提高并发度)引出一堆小问题...(八股)11.tcp里面一次里面出现了connect reset,什么原因导致的?12.什么情况服务端会主动关闭连接?13.tcp在传输中会有拆包和分包的过程,说一说?(缓冲区,报文段大小限制)14.知道啥是长非管道吗???15.mysql的mvcc能说一说吗,解决什么问题?(保障隔离,mvcc在读取已提交和可重复读中的应用)16.索引有哪些啊?(讲了一堆)17.innodb默认什么索引(b+树)18.使用b+树有什么优势?19.mysql的表空洞???20.手撕(leetcode上的一道mid题)(聊天)21.日常在技术学习方面有什么技巧?22.做的项目是你自己找的吗?有没有调研和对标过外部相似的产品和功能?23.你这边岗位的意向城市在哪?24.实习的时间段呢?25.反问#美团##暑期实习##面经#
查看24道真题和解析
点赞 评论 收藏
分享
2024-11-13 16:39
门头沟学院 Java
AI面1、什么是VLAN,有什么作用2、解释Linux运行队列runqueue如何查看运行3、解释一下 MySQL 联合索引的最左匹配原则?为什么会有这个限制?在设计和使用联合索引时,你会如何考虑这个原则来优化查询性能?4、介绍一下 Spring MVC 处理请求和响应的流程。5、什么是 Java 里的 NIO new IO?它与传统 IO 有什么区别?6、设计一个简单的电子邮件发送系统,支持批量发送和模板管理。请描述你的系统架构和主要流程。7、你设计了一个使用 MySQL 和 Springboot 的电子邮件发送系统,支持批量发送和模板管理,并通过消息队列实现异步发送。在這個系统中,你是如何处理邮件發送失败的情况的?比如说,如果某些邮件由于网络问题或其他原因没有成功发送,你會采取什么措施来确保这些邮件最终能够被成功发送?8、描述一次你通过重构代码或优化性能而学到新知识的经历过程中有哪些困难?你是怎么克服的?9、你能详细描述一下你在阅读 PageHelper 源码时,具体是如何理解它的工作原理的吗?有哪些关键的实现细节让你印象深刻?10、描述一个你成功地将一个想法转化为实际行动的例子,你是如何规划和执行的?遇到了哪些障碍?如何克服的?11、你描述了如何通过团队合作和学习新知识,成功完成了一项语音模型的专利申请。在这个过程中,你具体是如何组织和协调团队成员的日常任务的?能否详细谈谈你采取了哪些具体行动来确保项目的顺利推进?一面(挂了)1、自我介绍2、在上家公司做了优化工作是指哪些工作,Saas平台开发优化,指的是性能优化吗还是(并没有写,没答)3、Spring Cloud架构拆分前后的对比4、在拆分的过程中有没有遇到过什么比较典型的问题?对于你来说还是有挑战的。5、微服务配置这块在拆分中遇到了什么问题(涉及到公共配置和私有化配置)6、缺失配置导致服务起不起来,公共包依赖冲突问题7、介绍一下Redis在项目中的应用和Redis支持的数据类型,存储结构8、Redis的持久化怎么样的,区别是什么9、Redis和MySQL的数据一致性怎么保障的10、介绍Java中常用的集合11、HashSet特点,扩容机制12、红黑树的特点13、HashMap怎么保证线程安全14、线程池的目的,怎么使用,拒绝策略15、Java里的多态是什么,介绍一下方法重载和重写16、介绍Java的基本数据结构17、值传递和引用传递的区别18、异常有几种,了解过哪些,处理异常的思路
查看29道真题和解析
点赞 评论 收藏
分享
评论
6
38
分享
牛客网
牛客企业服务