【回馈牛客】拼多多服务端开发,提前批
一面
1.对拼多多公司是否有了解;工作压力大;相对于其他人,有哪些优势;后端开发需要的知识;新工作新环境怎么适应。
2. http协议,请求哪些方法;http是无状态的,怎么理解;cookie和session的区别,有了cookie为什么还用session;
3. TCP的流量控制怎么实现,backlog参数;
4.数据库相关概念,如事务的隔离性,NVCC;
5.设计模式有没有了解;NoSQL数据库;
6.介绍项目,背景,有什么问题,挑战,如何解决;
7.C++面向对象,怎么理解,可维护性好怎么体现;
8.给自己的面试打个分;
8.编程题:合并两个有序数组;
二面
1.面试官来自推荐部门;自我介绍;项目。
2.对哪些数据结构比较熟悉;数组和链表的区别;如何提高数组和链表的检索效率(数组排序后用二分查找,链表没答上来,面试官说可以将链表与数组结合,将链表退化为一个大点的索引,指向一个数组,数组内继续用排序和二分)
3.二分查找为什么不用四六分或三七分(概率均匀,性能波动小,较稳定)
4.如何判断链表有环(快慢指针),有其他办法吗(借助额外空间,用哈希);
6.场景,如何实现一个动态的销量前1000的排行榜(用最小堆)
5.数据库熟悉吗;
6.操作系统进程和线程的区别;
7.应用层协议有哪些;TCP和UDP的区别;程序发送一个数据报,如何判断是TCP还是UDP传输(IP报文首部标识);http是基于哪个传输协议(TCP),可以用UDP实现http吗(http3就是基于UDP的,可靠性由应用层支持);
8.背景更偏于算法,为什么要投服务端开发;
9.反问,部门什么业务;主要用Java语言开发吗(根据岗位需求而定)。
10.编程题,一个有序数组,找出给定值的最小索引,没有则返回-1。自己写测试用例(二分查找,判断写错了,测试用例没有好好设计)
三面
1.编程题1,打印旋转数组;编程题2,出现频率最高的单词;
2.SQL题,从Student表中,找到各科成绩都高于92的学生名单,
id, stu_id, course, score
#拼多多##面试题目#