柠檬微趣C++后台实习一面

题很多还细,顺序记不住了,想起有啥就说啥
1.自我介绍
2.inline函数
3.哈希表
4.在哈希冲突的情况下如何实现O(1) (完全不会,说了桶底下挂链表和红黑树,但面试官就是要O(1) QAQ)
5.B+树的优点(问了为什么B+树效率高 当时脑子抽了忘记了每层IO)
6.vector扩容
7.l个初始数字 vector两倍扩容,问插入n个数字的平均复杂度(说了平摊O(1) 可面试官就是要具体复杂度 QAQ 当时也是从来没在面经上见过这种题,脑子抽了没算出来)
8.m阶B树n个数据的深度(八股没背到,自己也推不出来,败笔了)
9.sizeof返回的是啥(实际占有的内存)
10.虚函数实现了什么(多态)
10.5 实际项目中是否用过多态(我是QT的窗口)
11.怎么实现虚函数的(说了通过虚表指针来查找虚表)
12.虚表指针存哪(类开头)
13.如果子类的虚表指针改成指向基类的虚表(当时从来没想过原来还可以这么干)
14.传参方式(移动 值传 引用)
15.引用和值传区别
16.虚析构干啥的(说了为了释放派生类)
17.线程无法获取锁阻塞之后怎么重新获取锁的(或者是怎么判断锁是可获取的 直接给我问懵了)
18.自旋锁和互斥量的区别
19.函数重载的命名查找规则
20.遇到多个匹配参数的函数,编译器会调用哪个
21.四个转型,问dynamic_cast为啥不用,又问子类转基类咋办(学了这么久从来没遇到过)
22.第K大数怎么做的(口撕 用了优先队列)
23.无序数组中位数(口撕 用了对顶堆)
24.场景模拟题(日志相关)

手撕也没有  反问也没有  QAQ 大概率没了
不过面试官真的好,回答不出来的会引导你回答 还有耐心 可惜碰上了我这种飞舞 说是后台的主程 给您点赞。

#面经##柠檬微趣#
全部评论
在这个帖子里我看说在通下面挂一个链表的时间复杂度就是O(1)的啊?
1 回复 分享
发布于 2022-10-30 17:25 湖南
楼主面了多久呀,我也没有手撕,没有反问,突然就结束面试了
点赞 回复 分享
发布于 2024-07-02 17:08 陕西
楼主收到二面了吗,隔了多久呀
点赞 回复 分享
发布于 2022-11-25 17:35 北京
算法题感觉不是很难,我反问表现,面试官说他还没想好?
点赞 回复 分享
发布于 2022-11-01 15:22 湖南
今天一面,面了半小时,一个算法题 ,八股两三个没回答上来,不知道啥情况。
点赞 回复 分享
发布于 2022-11-01 15:21 湖南
楼主什么时候笔试的?a了几道?我也投了这个
点赞 回复 分享
发布于 2022-10-29 13:34 黑龙江

相关推荐

会员标识
09-02 21:49
已编辑
电子科技大学 算法工程师
纯八股一点项目没问,也是挺少见的,柠檬是个好公司,有点想要痛哭流涕当时oc了最后没去,感觉怪不好意思的,秋招应该也不会再投他们家了,发出来攒攒好运柠檬一面+二面4.2投递,4.12笔,4.24一面,4..28二面,一面1.逻辑右移和算术右移的区别?2.一般有符号整数的编码方式?3.补码的规则是什么?4.为什么采用补码去记有符号整数--这个确实没想起来,说了可以首尾成环,可以连续表示什么的……(搜了下其实主要是解决原码和反码的问题(无法统一加减法,零的歧义,溢出不好判断等问题)5.有符号整数,正数和负数的值域不同,为什么会这样?--我说有正数这里会有0的存在,(实际更好的回答,是说原本原码和反码有双0的歧义,补码没有歧义,原本表示-0的10000000在补码中被定义为-128)6.浮点数在计算机里是怎么存的(1+8+23,怎么组合忘了)7.描述一下快速排序8.快排的nlogn是怎么推出来的9.最差的情况下会退化成?10.稳定还是不稳定?为什么不稳定11.STL,挑一些容器说一下内部实现原理(说了vector,list,map,unordered_map)12.Vector怎么扩容13.什么情况下,即使不有序也不会考虑使用哈希表存储数据?--一时半会想不到,说了哈希表可能存在严重哈希冲突导致退化成O(n),还有就是哈希表内存可能占用更多(还有吗?)14.哈希表怎么知道哪几个元素发生冲突了?15.Const Static Inline 说一下使用场景16.C++多态如何实现?17.虚函数作用原理18.构造函数可以是虚的吗?析构呢?静态函数可以是虚的吗?手撕:获取二叉树最大深度的所有结点(用的层序遍历)二面:自我介绍略1.一上来直接让我定义单向链表的数据结构(结构体)2.创建一个ListNode,创建在哪个内存?说下开辟的内存大小3.关于这个内存对齐还有哪些方面能再具体讲一下吗?--主要补充了内存对齐优缺点,以及pragma_back调整内存对齐4.关于堆和栈的区别有哪些,能再讲一下吗?5.对于堆内存的管理手段,有哪些你知道的呢?说一下--除了new malloc这些,还说了两级分配器和内存池6.你刚说的这种做法有什么好处?--减少new/malloc调用开销,降低内存碎片7.你刚刚提到的内存碎片是怎么一回事?--说了内部碎片和外部碎片后面重点开始了8.用ListNode创建两个单向链表,两个单项链表有任意个公共节点 (0~无穷),画出有哪些组合(看图2)一开始的储备只有1,2,3,4,5,6,网上不少文章也是这样的,但面试官提示,有9种。后面磕磕绊绊临场把7,8,9考虑出来了9.假设已知只有两个链表的头结点,怎么确定具体是其中哪一种。临场的解决思路是,(仅供参考)首先要看是否有环(快慢指针),然后仍然要算结点数量,长度,(如果有环的话,需要找到入环位置,确定有效的结点数量)无环情况比较好区分,就是长度差先后走的那一套有环情况:1)如果两表循环能回到自己的头结点,可以得出 8。(8其实就是同一个环,不同头结点位置)2)然后5是2的变体,7是4的变体,9是1的变体,就看开始相交的位置和入环口的关系(9其实有两种情况,一种是两个都有环外部分,另一种是,一个为环,一个有环外部分)3)排除所有其他情况最后为6.10.中间顺便问了下怎么看是否有环,如何找入环位置等常规问题。前后这里口述扯了有20分钟,面试官有一定引导,也还算宽容手撕:给一个7x9的棋盘,选一个位置,围绕这个位置顺时针开始放数字,放30个数。其余置0。注意考虑边缘情况。我没找到原题,个人的思路大概就是螺旋数组II那道题的思路,大循环内4个小循环添数字。注意要加一点判断,如果超出了7x9的边界,那么就跳过,num就不会增加。(仅供参考)
查看30道真题和解析
点赞 评论 收藏
分享
部门:美团-金融服务日期:8.29上午,一小时后约9.2二面9.13更新:已意向1. 自我介绍(3min)2. 询问三段实习离职原因(3min)3. 拷打项目(30min)● 项目一:○ 项目背景○ 系统架构○ 请求流程○ 为什么这么设计(为什么C++重构成Java)○ 不同场景如何区分○ 设计模式具体如何使用○ 做了哪些优化(3点)○ 各级缓存分别是什么○ 缓存过期时间○ kafka消费模型○ 为什么启用多消费者,分区问题○ 线程池如何设计○ 线程池调优+压测○ 目前qps○ 如何迁移旧系统● 项目二:○ 线程池参数具体是多少○ 拒绝策略呢,为什么这么选4. 拷打八股(20+min)● JavaSE○ 三个特性○ 多态实现(运行时多台,编译时多态)○ 基本类型和包装类型(区别+使用场景+原理)○ String、StringBuffer、StringBuilder○ String为什么使用final数组○ Synchronized原理● Java集合○ ArrayList扩容机制○ HashMap○ ConcurrentHashMap● Mysql○ 索引分类○ 索引失效○ B+树和B树○ 锁机制(间隙锁使用)○ 隔离级别(各级别下会发生什么问题,如何解决的)○ MVCC○ RR隔离级别下的幻读5. 算法:删除链表倒数第n个节点(5min)6. 反问(5min):● 组内业务(tob、toc)● 面试流程● 建议总时长:1h15min体验:面试官是女生,温柔耐心,专业,难度不高,对项目深究
落糖糖:同学,瞅瞅我司,医疗独角兽,校招刚开,名额有限,先到先得,我的主页最新动态,绿灯直达,免笔试~
点赞 评论 收藏
分享
评论
10
79
分享

创作者周榜

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