秋招总结,感谢牛客网,感谢所有兄弟姐妹(略长,慎入)

秋招终于告一段落,是时候总结一波自己的秋招,算是回馈下牛客网,同时给自己一个总结。好了废话不说了。面经如下:

百度:(offer)

一面:

算法:一张表,表中记录为:一个节点,节点的父节点,节点是父节点的左孩子还是有孩子。Eg:record1:A B left,代表A是B的左孩子;record2: B C right,代表B是C的右孩子。将表形式的二叉树还原为二叉树。会不断的优化。。

基础:JVM内存、GC算法、b+树等

二面:

算法:

(1)二叉树的广度优先遍历;

(2)字典树(即1024叉树)保存在数据库里,方便存储,方便还原。问如何保存。(运气好,答案就是一面的问题),求最优解

(3) 数组的最大子序列和;上升到数组的两个最大子序列和(不能重复),k个子序列最大和呢?

(4) 基础:hashmap rehash实现,concurrentHashMap 实现。

三面:

逻辑:

(1)500个梨放在10个框里,自由放。保证在说出1-500任意个数字时,你都可以给我几个框,这几个框里面的梨的总数为给定数。如:第一个框放1个,第二个放两个,第三个放四个,可以得到1-7任意数;

(2)任意图形,求几笔可以完成(顶点可以重复画,边不可以)

(3)给定一个N,当N是偶数时,除以2;当N是奇数时两种策略:一种是N-1;另一种为N+1;求使N变到1最少的步骤数;

如:N = 3;步骤为3-1=2;2/2=1; 步骤数为2;

N= 4;步骤4/2=2;2/2=1; 步骤数为2;


百度总结:重视算法、逻辑思维,追求最优解;


触宝科技:(offer)

一面:

算法:

给定一个数组,给定k,代表k个数,给定sum,代表这k个数的和为sum,求有多少种满足条件的组合;

如:data = {1,2,4,5,8,0,-20};k= 2,sum= 6;则结果为2;符合条件的配对为{1,5},{2,4}。

坑点:k是任意的,可能大于3,可能为否,data可能为空,可能长度小于k;

基础:网络:握手、报文、数据库的死锁等;

二面:

给定文件,包含100万条记录:name ,score;对文件中score 排序,并输出到另一个文件,内存排序限制最多1万条数据;要求详细全过程,当时写了2页纸,有点崩。

我理解的考点:

考点 1:比较器:把记录保存为对象,使得比较时name ,跟随score;

考点2:reduce的归并过程;

面试官看完我的代码:提示的坑点:

坑点1:File文件BufferedReader 等时需要try,catch

坑点2:崩点预防,即如果先从data中读取1-10000行,排序。再从data文件中读取10001-20000行,如果读取过程中发生意外,怎么办?

处理办法:标记读取哪一行,下次读取从标记位置继续读取即可;

可以想象下catch中怎么写?

基础:sql语句、网络报头,为什么两次握手不行?

三面:

算法:

一个list,里面有n 条url, 现在网络访问时,判断这个list ,命中的概率;

即如:list 里有 www.baidu.com https://www.nowcoder.com/discuss www.163.com 现在访问的url如下:https://www.nowcoder.com/discusswww.pronhub.com http://dblp.dagstuhl.de/ 则共访问了3条,命中1条,命中率为1/3 * 100%;求最优解

基础:优先级队列实现原理;进程间通讯方式;


四面:

HR,聊聊天,拉拉家常,非常亲近的一个小姐姐。第二天就给意向书了。给效率点赞;


触宝总结:基础题为常规基础题,重视算法,重视网络;


海康威视:(offer)

一面:

1.     #{}和${}的区别是什么?

2.     Dao接口怎么工作的?

3.     SpringMVC工作流程?

4.     给定三个线程,如何控制使得线程1先执行完,再执行线程2,最后执行线程3;(方法很多,优先级不行,因为不能保证)

5.     线程池实现原理,如何自己实现一个线程池?

二面:

HR, 聊聊天,讲道理,海康面我的HR 还是很有女神气质的;

海康总结:面试的大部分都是985,签约时除了我都是985,只能说可能还是比较看重学校吧,也可能这个公司强的点我还没有get到


唯品会(offer)

一面:

常规基础:数据库莫过于sql语句、数据库优化、执行引擎;

网络:握手、报文、协议等;

Java:集合类源码、线程池、多线程+ 基本概念;

数据结构:思维可能很重要,比如说快排Partion剪枝的各种应用;

二面:

(1) 网络的五层协议,为什么要设置五层协议(有点难);

(2) 思维题:完成一个模块的步骤(自由发挥的);

(3) 数组最大的子序列和(O(n^3);O(n^2);O(nlogn);O(n))

HR面:

这个人是真的在问,就是经常我们看到的题,如最大优点、最大缺点、如何学习一种新的技术、家庭情况,几个兄弟姐妹?

最尴尬的是这个问题,她问我你心目中最想去的三个公司是什么?

我回答第一网易,因为我想去阿里,但是能力不足,她打断说暂时不考虑能力,我说阿里、网易、京东。。她嘴角微微上扬,淡淡一笑,没考虑唯品会吗?尴尬。。。。

唯品会总结:

简历很重要、笔试不重要、面试过程当然最重要了;


58(offer)

一面:

类似唯品会一面的常规题目

二面:我的二面是HR

谈谈人生、聊聊理想;是个小哥哥,很帅,相信很多人看到了,还很礼貌,吸粉了;

二面等了接近2个小,不过碰到了本科同学,那感觉杠杠的;当然还碰到了两个师兄,听说还有很多熟人;为58点赞。

三面:总监

不到20分钟结束,总监很平易近人,聊了聊项目,然后说月中给你offer,然后就结束了。

58总结:技术面其实就一面,都是常规题目,但问的多、杂。总之基础很重要;


银联:(offer,内推的)

一面:群面

这个我也不知道怎么表现,总之要有逻辑,举个例子:从社会层面和个人层面去考虑,其中社会层面包括:***、经济、文化等,个人层面包括:教育、医疗、个人发展等,细节的东西大家也都记不住,面试官也记不住,总之框架才是最重要的。(社会***核心价值观用起来,十九大报告中的大框架用起来。。。)

二面:

1、          Javacore,当时真的不会,后来了解了,大家可以研究下Javacore/HeapDump.

2、          基础知识:Jvm内存泄露的情况;b+树的特点;java设计模式,spring利用到了哪些?

银联总结:不知道为啥,就是感觉群面最关键。


滴滴(二面挂)

一面:

1、          如何判断计算机存储数据是高位在前还是低位在前;

2、          Huffman编码的一个具体实例;

3、          操作系统的的各种问题;


二面:

1、          计算机基础,重点在操作系统;

2、          任意三个数字,数字是正整数,其中一个是另外两个的和,现在有三个人,每个人头顶上贴一个数字,只能看到另外两个人的数字,从第一个人开始问,如果他能猜出来,就说我知道,如果不能就下一个,轮流问(当问到第三个不知道时,就又问第一个,N和前边一样多了一次)。给出N:代表问了几次,m:代表此人猜出他头顶的数字;求其他两个人拥有的数字;

3、          一条线段随机分为3份,这三份组成三角形的的概率;


滴滴总结:都说各种算法,我没有,很尴尬,我的感觉很重视操作系统;


广联达:(二面结束没有后续)

一面:

算法:二叉树的镜面对称;

CS基础

那个面试官很和蔼,看着给我打了个A-,然后没反应了

二面:

思维:有两个玻璃珠子和100层高的楼,测试玻璃珠子在多高的楼层丢下刚好摔碎。注:如果没有碎,则可以继续使用,且珠子没有任何影响,如果碎了则不可以使用;需要求出精确值;


广联达总结:感觉还可以的面试,没有后续结果,当然也不重要。


安利我觉得比较好Java研发方面的书:

(1)程序员代码面试指南、疯狂Java讲义、Java虚拟机;

(2)高性能Mysql、Java并发编程实战、spring 实战、深入浅出MyBatis技术原理

其他的看看博客、面经、找点书等就Ok了。


最后祝所有人都拿到自己满意的offer


全部评论
恭喜楼主,感谢分享!
点赞 回复
分享
发布于 2017-10-19 16:12
研究生本科生?
点赞 回复
分享
发布于 2017-10-19 16:16
联想
校招火热招聘中
官网直投
牛逼🐮
点赞 回复
分享
发布于 2017-10-19 16:23
面的是算法还是java开发啊
点赞 回复
分享
发布于 2017-10-22 20:04

相关推荐

12 105 评论
分享
牛客网
牛客企业服务