是我的一些面试经验,希望对你们有用哦!
一面:
1 自我介绍
2 docker和k8s了解多少
3 研究生学了哪些课程
4 操作系统了解么,讲一下进程和线程
5 死锁和处理方式
6 内存,虚拟内存和页面置换
7 网络了解么,讲一下三次握手和四次挥手
8 数据库了解多少,mysql索引,事务,锁讲了一些
9 Redis呢,讲了一下数据结构,持久化方式,使用场景
10 分布式了解哪些,负载均衡有哪些方式,说了dns,nginx,lvs和硬件,一致性问题怎么解决,说了2pc,3pc,raft和paxos,zab
10 mysql大表数据查询,怎么优化,分表,分库。
判
使用快慢指针解决
12 完全二叉树判断:
二面
1 项目
2 docker和kubenetes的原理和了解程度
3 docker的cgroup了解么
4 kubenetes的架构,扩容是怎么完成的。
5 Java的四种引用
6 Java的线程通信方式
7 Linux的进程通信方式
8 Java的线程池
9 算法
1 - N + 1这些数中取出N个,问剩下的是哪个。。
我说加起来相减,面试官说取巧了,不能这样。
我说比较数组下标,他还是说取巧。
于是我让他提示我一下,他说了排序再找。。额
然后想了两个空间换时间的办法,一个是用hashmap遍历两个数组。一个是合并数组后统计数字出现次数,也是hashmap
给定一串数字,找出所有可能的IP地址组合,比如192168111,组合是192.168.1.11,192.168.11.1。
应该LeetCode的题。之前自己没写完整,现场憋出来了。
这个代码应该没错。面试官看了二十分钟才说ok。
然后我们就这样沉默了20分钟,中间他就说了几句话。
三面
1项目
2家庭情况
3学习生活的挑战
4学新技术的方式
5解释一下docker
6意向城市和岗位方向