第一篇
一面 2019/3/18
1、都知道哪些 C++新特性?
2、问了一些C++容易出 bug 的点,比如拷贝构造函数加&的问题
3、STL vector 的扩容问题
4、STL 的空间配置器
5、设计模式观察者模式
6、问了一些网络协议,有点忘了,大概就是 TCP 三握四挥,HTTP 与 HTTPS 的问题
7、Linux 多线程同步,进程间通信,原子操作
8、Linux select 和 epoll 各自特点
9、项目中服务器是如何架构的
10、数据库主从复制
11、手写代码:数组中数字超过一半的数
二面 2019/3/18
1、比较详细的讲了自己的 IM 项目,内存池、线程池、TCP 字节流分界以及加密
2、知道哪些开源内存池
3、考虑 SQL 注入问题了吗
4、给了一个类,里面定义了虚函数、静态成员函数以及普通的成员函数,当用一个空指针
调用这些函数时会发生什么
5、手写代码:K 个有序链表合并成一个
6、问了面试官关于部门工作内容的一些问题
第二篇
一面 2018/10/10
1、自我介绍
2、项目
3、es6 新特性说几个
4、跨域
5、cookie 和storage 的区别
6、http 和 https 的端口
7、什么是ssr
8、一道题,一个模板字符串,给定一个对象,用对象来替换模板字符串的占位符
**二面 2018/10/10 **
1、自我介绍
2、项目
3、react 说几个生命周期的钩子函数
4、写一个简单的react 组件
5、vue 和react 的异同
6、webpcak 的打包原理
7、原型链
8、es6 新特性
9、使用 class 写一个继承
10、项目聊了一会
第三篇
一面 2019/10/19
1、又问到了bagging 和boosting
2、xgb 和 lgb 的区别
3、xgb 里面不同参数主要是什么作用,问了防止过拟合有哪些参数可以调节
4、dropout 中训练和测试阶段有什么区别
5、BN 的原理
6、平衡二叉树的插入查找的时间复杂度,每个排序算法讲了一遍,稳定的排序算法有哪些
第四篇
**一面 2019/9/25 **
1、LSTM 相比 RNN 的优点
2、python 中 import 导包是 pip 安装的包还是文件夹下的包
3、如果有同名包,文件命名会出什么问题
4、" if “==” main "的作用是什么
5、海量数据下如何找到中位数
6、介绍决策树模型及其扩展
7、代码题:孤岛问题
第五篇
一面 2018/9/25
1、集合框架画一下
2、项目为什么用 dubbo
3、项目中添加购物车,什么时候减库存
4、怎么防止超卖
5、手写sql 输出姓名叫张三,出生日期在 1996-1998 之间人的平均年龄
6、数据库的隔离级别
7、select*from table where name=‘张三’ and age=10 查询的慢,怎么优化
8、联合索引怎么创建的,创建出来的结构
9、画出抽象工厂
10、top n
11、有一个栈,可以push 也可以 pop,求出某一时刻的最小值
第六篇
一面 2019/9/21
1、讲项目
2、为什么用 Bi-LSTM,数据量这么小,为什么不用传统的 CRF,CRF 的损失函数,怎么做
解码的
3、项目里面用到了 CYK,然后让我写动态规划的伪码,写的有点久,感觉自己给自己挖了
了坑
4、怎么存 CNF 树,应该是用字典树
5、代码题:二叉树最近公共父节点
6、代码题:每一个位置上有很多个词表,从每一个位置上的词表中选一个词,组成一句话,求所
有能组合成的句子
7、讲一些 query 和title 的一些文本相似度的方法
8、有了解什么最新的深度模型,transformer,bert 等,bert 和XL-Net 的区别
9、你是哪儿人啊,以后会在北京长期发展吗?
10、有什么要问我的
第七篇
一面 2019/8/30
1、讲实习做的事情
2、C++11 的新特性
3、内存管理,几个区,堆、栈一般都是什么数据
4、map 的底层,讲红黑树
5、多态、虚函数
6、手写程序:一个数组,求两个数和为K 的所有数对;快排
7、遇到的困难
8、如果工作中和别人意见不同,怎么处理
9、给自己的实习工作打几分
10、http get post request response
11、多线程、互斥锁、读写锁
12、你的职业规划,打算工作后怎么发展
13、你觉得后端的技术栈是什么
**二面 2019/9/6 **
1、自我介绍,四五句话结束
2、介绍实习,实习比较水,没做什么大工作
3、写一个字符串全排列
4、问我做过什么挑战性的东西
5、一直在问实践性的东西,对方可能觉得聊不下去了,开始问,你觉得什么是优秀的开发
6、怎么看对方技术力强不强
7、数据库优化
8、礼貌性地问了能不能来实习
第八篇
**一面 2019/6 **
1、讲一下 c 语言和 c++中的 static
2、讲一下 c 中的 qsort 和 c++中的 sort
3、你刚才提到了函数指针,写一个并讲一下函数指针
4、代码,设计一个函数求 uint64×uint64 的结果,不允许使用字符串
5、代码,字符串的通配规则,*表示匹配一个或者多个,?表示只能匹配一个,给一个字符
串和一个带通配符的串,写个代码确定怎么算匹配上了,怎么算没匹配上
6、代码,字符串的 C n 2 问题.就是那种字符组合问题
7、代码,字符串的 C n m 问题
8、代码,升序数组 1 2 3 4 5 7 9 13 20 25 变为 25 1 20 2 13 3 9 4 7 5
9、代码,1 2 3 4 5 6 7 8 9 变为 7 8 9 1 2 3 4 5 6
10、讲思路,读取我的简历,找最大重复子串,可提前对文档预处理
11、切分简历中的句子
第九篇
**一面 2019/6 **
1、自我介绍
2、挑一个项目讲一下
3、服务器基于 tcp,那怎么去实现 tcp 连接
4、你的服务器最多能承受多少个用户同时点击
5、用到了哪些技术
6、空间配置器是什么
7、线程和进程的区别
8、udp 和 Tcp 的区别
9、写个代码吧 atoi
10、再做一道,给出一个二叉树的前序遍历,空结点用#表示,怎么判断这个前序遍历表示的
是不是一个合法的二叉树
11、换一道,服务器经常会有一些恶意 ip 攻击,我们有一个黑名单,有一百万个 ip,怎么
快速查询访问服务器的 ip 是不是黑名单里的
第十篇
**一面 2019/10/9 **
1、笔试题复盘
2、手写string,我又出 bug 了
3、手写二叉树按行输出
4、LRU 读写如何实现线程安全,加锁。如何提升加锁性能
5、map 大小
6、100 大小 unoderedmap 和 10000 大小的查找一个数谁快,cacheline,不太懂
**二面 2019/10/9 **
1、红黑树和AVL 区别
2、为什么要四次挥手,如果不需要 close_wait 状态的话还需要四次挥手吗
3、const 用法,为什么拷贝构造函数要传引用
4、海量字符串排序
5、实现关键字推荐,比如在搜索栏输入ab,底下会显示所有ab 关联且关联度依次降低的
10 个 string;这些数据来自于一个 txt,里面的结构是 string+其频率,可以对 txt 里的数
据进行预处理
6、手撕代码:将 12345678 这种格式的表示为字符串 string
7、旋转数组查找target
求职必备刷题官网:https://github.com/bennyrhys/interview 【更多互联网公司笔试面试真题请关注“让我遇见相似的灵魂”公众号】