拼多多服务端研发实习二面面经

1. 自我介绍
2. 项目相关的问题
raft选主流程
怎么保证数据一致性的
跳表数据结构有什么特点
跳表插入数据过程
和B+树相比有什么优点
3. C++
面向对象的特性
怎么实现多态的
volatile 关键字
析构函数是虚函数的原因
智能指针自动内存管理方面的优缺点
用了智能指针之后还会出现内存泄露吗 怎么解决
4. 数据库
关系型数据事务的特性
隔离级别有那几种级别 分别有哪些问题
可串行化有什么问题吗
假如一个表四个字段 查询某个用户在某个店铺下某个期间的订单列表 怎么设计索引
5. 计网
拥塞控制流程
6. 设计模式了解吗
线程安全的单例模式怎么实现 有哪几种方法
选一个熟悉的方法写一下代码
7. 写一下归并排序
9. 有看过哪些开源的代码
8. 反问
部门做什么的?
结果预计什么时候出来? 问Hr
对我有什么建议吗? 没有

总体上感觉还是有难度的 个人稍微有些紧张 面试官稍微有一点严肃会有点压力 

许愿早日拿到实习offer!!

全部评论
跳表的特点,来自gpt4的回答: 跳表(Skip List)是一种高效的可替代平衡树的数据结构,它通过在标准的有序链表上增加多级索引来提高查找效率。下面是跳表的一些主要特点: 1. 多层结构:跳表包含多层链表,每一层都是下一层的一个子集,最下面一层包含所有元素。顶层链表有最少的节点,而底层链表则有最多的节点。通常顶层的节点较少,但可以快速跳过多个节点。 2. 插入、删除、查找效率: 跳表的平均时间复杂度和最差时间复杂度都为O(log n),这使得它在查找、插入和删除操作方面表现出与平衡树类似的效率。 3. 空间开销:由于需要维护多级索引,跳表通常会有较高的空间复杂度。不过,通过调整索引层的节点密度,可以针对时间复杂度与空间复杂度之间的平衡做出优化。 4. 随机化:跳表索引层是通过一个随机过程构建的,即决定一个节点插入哪些层是通过抛硬币的方式随机决定的。这种随机化技术是为了保证跳表的平衡,避免在最糟糕情况下退化成普通链表。 5. 易于实现:跳表的算法和数据结构相对简单,编码实现比平衡树简便,从而减少了出bug的可能。 6. 顺序访问:跳表的另一个优点是可以很容易地进行顺序访问,即它支持快速的前向迭代,这一点在平衡树中实现起来相对麻烦。 总而言之,跳表是一种概率性数据结构,通过空间换时间的策略,在平均情况下能为复杂的动态集合操作提供高效的性能,尤其在实现简单性方面有优势。
1
送花
回复
分享
发布于 04-15 09:04 湖南
佬收到三面了么?
点赞
送花
回复
分享
发布于 04-12 09:24 上海
秋招专场
校招火热招聘中
官网直投
顺便提醒下大佬,pdd 11 11 6 警告😂实习生也逃不过
点赞
送花
回复
分享
发布于 04-15 09:15 湖南
佬约三面了么
点赞
送花
回复
分享
发布于 04-15 15:06 湖北
lz最后怎么样了
点赞
送花
回复
分享
发布于 05-15 21:10 湖北

相关推荐

5 50 评论
分享
牛客网
牛客企业服务