美团-软件开发工程师暑期实习面经
全程 40 分钟,面试官很好,在轻松愉快中聊八股,最后给了一道 Easy 算法题。
C++
(1) 介绍一下智能指针 unique_ptr / shared_ptr / weak_ptr 的区别
(2) shared_ptr 是线程安全的吗
(3) 什么情况下 shared_ptr 会造成内存泄漏(如何解决)
(4) 如何使用 vector 才能使性能达到最佳(扩容原理)
(5) 介绍一下 map 和 HashMap 底层实现(忘了)
(6) map 是线程安全的吗(STL 库里的都不是)
(7) HashMap 为什么使用红黑树而不是平衡二叉树
(8) 如何使用 vector 可以支持同时读写数据(不允许加锁)
(9) 了解 std::function 如何实现回调函数吗
epoll
(1) select / poll / epoll 的区别
(2) epoll 回调函数何时触发
算法题
(1) 合并两个有序链表 No.21
P.S. 面试官要求必须能运行,这个环节卡了一段时间。
后续
(1) 3.20 一面,面试官说基础挺好,原来八股就是基础,能不能有二面不清楚,因为竞争压力很大,千军万马过独木桥。
(2) 3.20 当晚约了 3.21 下午二面,个人原因改成了 3.23 下午二面。
(3) 3.23 下午二面,先聊了十几分钟实习,无八股。后面出了一道 medium 难度的题,重排链表,花了十五分钟左右 AC 了。感觉聊的还可以,不知道会不会被温柔一刀,3.24 上午看到面试官提交了面评,等等结果。
(4) 3.29 进入人才库,二面后泡了一周,感觉不妙,今早一查,果然挂了。大势之下,尽力而为。
#我的实习求职记录#