腾讯Teg一面凉经。。。
2020/9/5 腾讯TEG一面,70min,流程变灰,应该是凉了。面试官说我还不错,但是跟计算机专业的比起来还是差一点。面试体验很好~部门用的语言是C++,很少问到java基础,也没有问spring框架和虚拟机。以下是我能想起来的面试题:
-
研发环节各个流程(讲实习提到的,就是领取卡片、开发、提测、上线那一系列)
-
Git底层原理,branch如何实现(本质是什么),SHA-1算法计算commitId(git相关)
-
项目中的mysql是如何部署的,部署了多少台
-
前端请求如何打到指定节点?(shard算法(不了解),redis路由)
-
linux查看tcp连接的命令
-
前端输入域名回车发生了什么
-
DNS解析ip地址,解析过程如何,多个ip返回哪个?
-
传输层、网络层都要讲一下
-
如何根据ip到达目的地?路由器,路由表,没缓存如何找到?
-
-
操作系统把连接存在哪?
-
什么是半连接队列?有没有数量限制?如何控制?什么是 全连接队列?
-
进程与线程的区别
-
线程通信的方式
-
linux查看进程、线程的命令
-
内存快还是磁盘快?为什么?
-
磁盘是如何寻址的?
-
你用过的哪些开源组件是多线程、多进程、单线程的?
-
操作系统调用read过程(不会)
-
HashMap线程安全吗?ConcurrentHashMap如何实现线程安全?看过源码嘛?(没。。。)
-
讲一下哈希表(如何实现),自己实现哈希表线程安全的话要怎么做?(关键是在哪加锁的问题,面试官是在引导我,最终说了在桶上加锁,回头看一下源码)
-
哈希开链过长如何解决?(面试官想要的答案是红黑树)
-
了解哪些hash算法?
-
红黑树有哪些性质?
-
红黑树与B+树有什么区别?各自使用场景
-
C++ map用什么实现?为什么不用哈希表?
-
C++如何实现多态?运行时多态还是编译时多态?编译时多态什么?
-
函数调用时如何查找的?(讲了半天没讲清楚,总之是名字查找先于类型检查,都忘记了)
-
编译过程? 宏替换发生在什么时候?头文件替换呢?编译原理学过吗(没。。。),如果让你设计编译器,如何做?(我。。。只答了目的就是把高级语言翻译成低级语言,非科班伤不起)
-
数据库了解多少?讲一下事务ACID中,如何实现原子性的,如何保证多条插入语句,要么成功要么回滚?(没答上来)
- 算法题:2.5亿个整数,只有一个数出现两次,其余全部出现一次,如何找到它?(哈希,bitmap)
- 补充:
- tcp连接,cs两端分别调用了哪些函数
- dns解析域名,相同的ip返回哪个?如何判断最近的那个?
-