[面试经验]某互联网公司霸面经验

  自开博以来已经过去好几个月了,几乎没有一篇完整的博文,果然还是过不去这个坎呀。记得以前也开过帐号,都没有坚持下来,不太会随时思考总结,对什么都是三分钟热度。这次重新开博客,又是下了一番决心,由于找工作受挫,所以想加强自己的思考总结,然而并没有坚持下去,加上后来半碰运气半天资聪颖(嘿嘿)的找到了理想的工作,就更忘记初衷了。

  既然今天想起来了,而且相隔时间还不至于长的让我的浏览器缓存忘记密码,那么还是要再坚持一下。先贴上得到最终理想工作的面试经验。

 

一面的问题:

0. 介绍项目

1. Java的弱引用,说不记得,确实只有微弱的印象了

2.Java的多态,好像说的不对,跟重载混了

2. 快排,写代码:考虑所写代码在元素全相同或已有序情况下是否最优

3. 写一个类,实现矩阵倒置,矩阵乘法的实现(考虑size是否匹配,否则抛异常等)

4. 写一个栈的类,pop的时候的一个内存问题,没理解面试官要问啥,以及能够返回最小值的栈的思想

5. 二叉树的最低公共祖先,说算法,不用写

6. 两个大文件,每个文件的大小相当于单机内存的20倍,存储Int64的整型数,求两个文件中都出现的数,用MapReduce和单机分别怎么实现,提醒我用MapReduce的思想,我扯了半天哈希还是没想出来,这题太惨

7.说了下在线广告系统里那些概念,什么DSP, Ad Exchange,SSP,DMP以及其中关联之类

 

二面的问题:

1. 解释项目,忘记说哪个了

2. 问TCP和OS的问题,我说不太有信心,因此问了些容易的,TCP的连接和断开过程,线程和进程的区别,以及线程之间的同步和互斥,通信方式等等,TCP那块答的不好,面试官还给我解释了一遍,太善良了

3. 数据库,问了一个表设计问题,最后在面试官的提醒下也算答出来了,利用空间允余的方案来加快速度

4. 算法,写了一个矩阵中从左上角到右下角的路径数,用动态规划做,之前做过,好像还做了一道题,想不起来了

5. 解释Spark的容错

 

三面的问题:

1. 跟我扯了会BloomFilter,我确实说错了,面试官没有深究,还说知道这些已经不错了

2. MapReduce中进度后退的情况,以及Mapper没执行完Reducer已经开始的原因

3. 算法,写了一个DAG图依赖的问题,最后想测试用例,有一种情况没想到,面试官提醒了,这种情况会影响我的程序结果,在他提醒下修改了代码

4. 一个系统的设计问题,Master-Slave结构中对同一个表的更新在Master执行,多个Slave可以执行并发读,但是怎么把Master上的更新同步到Slave结点上

5. MapReduce实现两个表join

 

虽然表现平平,但是博主除了第一面有点紧张无措,后面渐入佳境,也不知道哪里来的自信,积极的参与思考,还与面试管争辩。虽然给出的未必是最优解,但是要让面试管能看到你的思维能力和逻辑分析能力。能通过霸面拿到自己想要的工作offer,非常感恩,以后要更加努力,坚持多思考,多总结,多写博客,这样才能进步。

哎呀呀,只要下次想起来要写博客的时候,不至于忘记帐号和密码就好了。

posted @ 2015-11-19 10:49  eaglet-weixi  阅读(398)  评论(0编辑  收藏  举报