许愿帖,许愿腾讯cdg上岸
一面:
new的对象可以free吗?为什么?
MySQL相关,https,非对称加密
堆上的对象和栈上的对象有什么分别?
为什么析构函数要虚函数
map底层,和avl比有什么优势,
zookeeper的leader了解过吗
tcp拥塞控制
全局变量,局部变量
epoll的底层原理
select底层原理
epoll对于select的优势
如何调试服务器?
二面:
MySQL相关,https,非对称加密
堆上的对象和栈上的对象有什么分别?
为什么析构函数要虚函数
map底层,和avl比有什么优势,
zookeeper的leader了解过吗
tcp拥塞控制
全局变量,局部变量
epoll的底层原理
select底层原理
epoll对于select的优势
如何调试服务器?
二面:
问了几个算法题,链表删除中间的节点,链表删除倒数第k个节点,微信抢红包随机算法,手撕快排
mysql相关,sql查询太慢如何优化
剩下的忘记整理了,上岸之后整理一下
三面:
c++如何实现多态
C++ 的vector的底层数据结构是什么
为什么2倍扩容
map的底层的数据结构是什么
红黑树的特点
插入插入删除以(logn)
哈希了解过吗
设计一个哈希算法,考虑什么?(哈希冲突少,其他的还有吗)
怎么让哈希算法冲突更少,有没有什么策略
快排什么时候会退化?
随机法;二路快排
为什么数据规模较小的时候可以采用插入排序?
为什么在实现一个快排的时候,比如STL,
实现快排,然后到一个规模的时候下选择插入,有什么考量的点(未回答出来)
内存分配算法了解吗,比如说给你一个内存池
操作系统相关的书籍看过哪些?
进程调度的策略有哪些?(调度算法)
我们用的电脑用的什么算法?(时间片轮转法)
进程的地址空间(进程的内存地址分布)堆在栈之上
多线程和多进程的优劣?
多进程:互不影响,一个进程有问题不干扰另一个进程,不存在同步和竞争的问题
构建会有大量开销
线程共享同一进程的全局变量,通信十分方便
锁相关了解吗?线程安全怎么办?(回答可重入函数,锁)
可重入函数:只了解strork
进程通信的机制有哪些?(IPC)
select epoll的区别
mysql的存储引擎
两个的区别?
myisam哪些环节执行效率会更高?表比较小,或者有大量的select语句
部署过mysql吗,主备复制安装过吗?主备复制有哪些方式?有什么区别?
nosql了解过吗?关于数据库听说过哪些?
https了解吗?简单介绍一下?
通信中怎么弄?为什么通信前用非对称加密,通信中要用对称?
为什么不一直用非对称?
xss了解吗?
sql注入了解吗?
内存泄漏怎么规避呢?
可以考虑一下面对对象的思想
代码量多少(10000多行)
有没有做题的习惯?
leetcode做了多少题,主要做什么方面的题
问面试评价?数据结构有些地方不是很清楚,但也有很多亮点,数据库,内存分配的展开
数据结构的展开不是很理想,hash,平衡二叉树的旋转操作(这些算比较基础的东西,我问的都是一些
比较基础的东西,要怎么深入都能搞定,你可以先要做到把你写的代码的东西要弄懂,
他的机制,特性以及为什么会这样都要搞懂)
内存分配算法,碎片和效率,策略答得还挺好
四面(GM面)
具体做过的项目:rpc框架库
介绍框架库的架构以及实现了什么功能?
zookeeper的服务的存储结构?
每一次登录,每一次远程登陆都会在zookeeper都会去寻址,这里头会有什么问题呢?
假如找不到节点,发散思考一下,这种模式下,都会远程寻址,会发生什么问题?
客户端如何知道主zookeeper断掉?
服务注册之后,如何知道节点的状态?(客户端,服务端如何知道节点的变化(坏掉或者其他的))
了解过zookeeper自带这样一个通知机制
global机制
你对zk了解多吗?
不太多,除了这些就不太了解了,因为我这里只用了一个注册中心功能
可以多去了解,这块挺常用的
考虑换语言吗?
简单介绍介绍面向对象的三个特性?用你自己的语言来描述这三个特性?
用现实的一些例子来说明这些特点,用生活中的一些例子,或者编程中的一些例子?
c++析构函数,尽可能把你理解的析构函数介绍一下?
析构函数是为了对对象的一些资源进行释放,析构函数在一些具体的代码中要设置成为虚析构函数,先析构子类
虚函数什么时候用?
对于模板了解什么,了解模板底层原理,你对模板的理解是什么?
c++的基本数据类型的长度?
mysql的索引结构:
myisam,innodb不同的索引结构
索引的存储结构(数据结构)
非主键索引?
什么是覆盖索引?
事务隔离级别?
分别介绍一下主要区别和应用场景?
每个隔离级别解决的问题
幻读介绍一下
数据库里面的死锁介绍一下?(介绍一个具体例子)什么是死锁,什么情况下产生死锁?
innodb和myisam区别
为什么查询比较多的时候为什么用myisam?
存储结构不同,mysiam索引和数据不在一起
然后就是tcp的问题,大家回答的时候可以尽可能详细,我这块说了大概30分钟(tcp三次握手四次挥手,为什么这么做,time_wait状态的相关,拥塞控制相关)
为什么IO可以多路复用?
select epoll poll的区别?(答得还可以)
lt和et的区别?
LT和ET适用场景?
排序算法,大家可以关注下快排的三种优化
父进程子进程共享什么?
子进程的生命周期受什么影响?
操作系统的内存分配
现在显示是hr面试了,但是距离状态更新已经第7天了,许愿赶紧给我hr面试吧,真的非常想去腾讯,好多学长和学姐都在这里,让我上岸吧,小马哥,我是你的忠实粉丝啊。