前言
笔试a过了一半题后几天就通知一面
3.23 一面
携程一面是人生第一次面试,特紧张。。。
面试官很年轻很和善,先自我介绍
自我介绍
问项目(个人开发的高校水站系统)
项目比较熟悉的技术(估计问项目里的亮点,然后根据它去展开提问)
哪里涉及到比较大的SQL查询(项目里的地址树,先连表查询在通过HashMap去关联关系)
HashMap的扩容(说错了一小点,说成了1.5倍扩容,实际是2倍扩容)
如果Map的length是100,现在99,再加一个元素会扩容吗(答错了,我说不是75就会扩容吗,100接近128(2的幂次方))
项目有用到多线程吗
熟悉那些排序算法,说一下快排的思想,快排稳定吗,什么情况适合快排
对于比较慢的sql如何优化(先用explain字段去分析执行情况,在去添加索引)
session的保存(我说保存到服务端,通过token去取,面试官: 实际情况可以保存到客户端)
为什么选择携程(常用携程订票,知名度高,学到了饱和,想提前找实习,实践学习)
手写一道算法题(在一个无序数组里找最小的2个数)
我写了一个利用优先队列去查找最小的k个数(自己想复杂了,不过也没太大问题)
面试官: 可以不用这么麻烦,优先队列是比较复杂的结构,可以直接去找2个(利用插入排序遍历一遍即可),尽量简单解决
有什么要问的?
你们那边java后端是主要涉及到什么的?
面试官: 提供服务,微服务那种,redis那些技术十分常用。