看到有帖子说百度的面经少,我发一下面经攒人品,许愿之后的面试都顺利!
一共面了两个部门
二十多天前上海部门三面结束后,要走了身份证号。
上周面了北京的部门,两面。
昨天收到hr电话说通过技术面了,是北京的座机号(又看到很多只面了一面的同学也收到hr电话了),所以有点懵,不知道到底过的是哪个部门。。。
百度商业质量服务部(上海,测开)
一面电话(42min)
自我介绍
问项目
项目,做了啥,难点
实习,做了啥
对称加密和非对称加密的区别
中间人攻击
HTTP和HTTPS
HTTP有哪些方法
cookie
深拷贝和浅拷贝
有哪些数据类型
String,StringBuilder,StringBuffer
ArrayList和Linkedlist
java 的基本特性
二叉树
满二叉树,完全二叉树
二叉树遍历,前中后,层次
层次遍历说一下实现
无序数组,找两个和为num的数
快速排序说一下思想
软件工程的思想
测试占什么角色
为啥想做测试而不是开发?
啥问题想问?
看中啥?基础、表达逻辑、项目里的角色、潜力、匹配度
建议?表达逻辑可以,有潜力
二面(52min)
-
自我介绍
-
代码:用最基本的数据结构实现stack(第一遍忘记实现peek方法,还有一些作用域等细节问题)
-
代码:二叉树前序遍历非递归实现
-
作用域
-
泛型
-
进程与线程区别
-
创建线程的方式
-
线程池
-
代码:实现四个线程交替打印0-100
- 线程调度方式
- 有啥想问的
- 看中啥能力?编程能力,基础知识
- 啥评价?总体还行吧
- 啥时候有通知?三面是交叉面,可能等待时间有点长
三面(56min) -
自我介绍
-
研究生成绩排名?
-
问项目。
- Android activity生命周期
-
项目有哪些坑(一直追问,答的不好。。。对项目还要总结)
- MySQL有哪些连接
-
代码题:两个有序数组求中位数(时间复杂度最低的做法,插隔板的方法,给15min写)
-
设计测试用例。打开一个app,出现闪屏图4s,图在服务端有配置(从功能、性能、兼容性适配性、客户端、服务端等角度答,不知道还有啥没考虑到的地方)
-
在北京上学为啥要选上海?对工作地点有要求吗?
说也是山东人,在上海比在北京好落户,985的成绩不错的落户不困难,户口对以后发展还是很重要。。。(不知道是在暗示我过了还是啥?要是过不了还跟我扯这一套干啥?)
10. 啥问题?
a) 还合格吗?现在不能说
b) 对我啥评价?基础还不错,项目欠缺
你们部门主要干啥?商业质量服务,检索、广告业务
———————————————————————————————分割线
百度(北京,凤巢商业平台部?java后台)
一面(一个半小时)
问特别广又特别细,多到记不得前面问了啥,大概记录了下,还不全
自我介绍
- 问项目
- hashmap 问特别细,jdk7和8的区别,链表长度大于8转成红黑树(面试官说转成红黑树的条件有两个?)
- 长度有啥限制?(2的幂)为啥?(hash均匀分布,但面试官说还有别的)
- hash算法是怎么做的?
- 说一下红黑树(就说了说概念……)红黑树查找的时间复杂度
- hashtable 和hashmap 啥区别
- concurrenthashmap 原理7和8的区别,深问细节
- 线程状态,画了画状态图,状态图如何转换
- wait和sleep啥区别,join()
- 线程池,各种细节,参数,原理,线程如何自动销毁?核心线程一段时间不用,也会被销毁吗。
- 线程池阻塞队列有哪些类型?说一下arrayblockqueue的实现
- synchronized 和lock 啥区别,原理,synchronized 是非公平的吗(是非公平的啊,面试官咋一脸疑惑)?效率区别?
- 释放锁的代码放在哪里?(finally)
- cas 原理,jdk里有哪些用到了?(synchronized,lock 和各种原子类)
- cas有什么问题?(如果一直请求会占用资源,jdk中如何改进的?)
- 如果很多个线程通过cas操作数据,如何提高效率?(对数据分段操作,类似segment 锁的概念)
- 了解身份鉴别协议,有哪些?(https证书等,讲了半天HTTPS协议,还没说OAuth OpenId等,就被转移话题了)
- 索引用什么数据结构
- b树和b+树啥区别
- 索引设计,给定abcdef ,可能会查ab,cd,ce…各种组合,怎么设计索引
- 事务特性,需要详细解释
- 隔离级别,需要详细解释
- mvcc是啥,如何实现的?
- 可重复读如何实现的?
- redis数据类型
- redis 和mysql如何保证一致性
- redis持久化方式,原理,效率,区别
- spring说几个注解
- ioc和aop原理
- 有哪些模式,静态,两种动态***,区别,效率
- 了解spring 的bean beanfactory吗(不太了解……)
- mybatis 有哪些标签
- mybatis和hibernate的区别
- mybaits的$和#什么区别
- mybatis的java类和xml怎么对应起来的
- tcp三次握手 四次挥手,画图
- 为啥三次握手,如果两次?
- 滑动窗口,是流量控制
- 拥塞窗口,拥塞控制,慢启动,画图
- 代码题,说思路
- 给定一个整数,能拆分成多个整数相加,求这些整数的最大乘积(动态规划)
- 给定一个数组,只能改变其中一个元素,判断它是否能变成一个递增数组
- 微信抢红包,如何让每个人抢到的钱相对均匀(先平均分,再对应的增加或减少rand[0,1];第二种思路,直接用rand 划分区间)
- android activiy 的生命周期(……好坑)
啥问题想问?
二面(大概四五十分钟)
自我介绍
女生,怎么看待研发的工作
你是研究信息安全的,我们是大数据相关的,以后的工作有啥倾向吗
项目,画项目流程图,详细讲
负责哪一块,遇到什么困难
redis MySQL主从
代码题:
二叉树排序(先遍历,再排序,再以中序的方式重新构建,太麻烦了……)
有序数组构建二叉树(递归中序构建,选中间点)
了解红黑树吗(说只知道基本概念,否则差点让撕红黑树了……)
写一下hashmap ,大概实现主要的方法
Hashmap扩容会出现啥问题
有啥问题?
看中啥能力?实际能力,不能只是背了一些概念,要有自己的理解
有啥评价?基础不错,项目少,以后在学校多参与一些项目
问了问研三下学期的安排,现在忙不忙,实验室到这里来路程要多久