面试时间 07/06
07/16更新 收到意向书,开业大吉 记录问题和大致的回答
一面(40min)页面置换算法 (FIFO LRU LFU等)
http cache了解吗(不了解)
java annotation用过吗(不太熟悉,只使用过框架提供的)
hashmap线程安全吗(不安全,put方法不安全以及1.7的resize)
GC机制(三种算法,分代收集等)
MySQL索引(B+树,相对B树的优点)
SQL查询缓慢怎么处理(用explain查看是否走索引,建立索引)
查询缓慢的业务中使用了多句SQL,怎么处理(应该是问怎么定位到改SQL语句,不太懂,只能答一句一句测试)
MySQL走索引怎么查到数据(innodb引擎以页的形式将数据储存到磁盘,查询时将页读入内存,在叶子节点中查取数据,叶节点内部通过二分法查找,找不到转到该页指向的下一个页继续查询)
编程题
1 2 5 分硬币不限,凑成1元有多少种方法
完全背包问题
二面(60min)
进程的内核态和用户态(用户程序是不安全的,对操作系统敏感的操作需要用内核态执行保证安全)
为什么需要三次握手(保证全双工链接的建立以及确定seq)(答得不完全)
滑动窗口(服务端响应客户端缓存窗口的大小,客户端来作拥塞控制和重传)
进程调度算法(RR算法,Linux采用的实时进程的FIFO和RR,普通进程的CFS)
设计模式(单例,工厂,代理,适配器)
LFU的设计,读取删除达到O(1)怎么设计 (HashMap再加多个链表,每个链表维护某个频数的数据,leetcode原题)
智力题 两颗筛子,可以写0-9 10个数字,用来表示一个月的每一日(01-31),怎么分配数字
在面试官的提示下完成了。 0,1,2必须在每个筛子上都有,然后可以6倒过来变成9,这样一个筛子为0,1,2,3,4,5 另一个为 0,1,2,6,7,8
编程
寻找二叉树相距最远的两个节点的距离
每个节点的左右子树高度和的最大值 中途有些bug,在提示下修正
三面(60min)
JavaGC机制(答过了)
设计模式(答过了)
写一个单例模式(双重检查加syn和valotile)
c++多态怎么实现的(不太懂c++,讲了Java的,根据周志明的书讲的)
编程题
判断树是否是完全二叉树
面试体验很好,最后一面发挥不太理想,许愿
全部评论
(12) 回帖