个人面经(百度、腾讯、鹏元数据、行云智能数据岗)

记录自找工作以来个人的面试经历与一些思考。

百度数据挖掘一面(电话面)

  1. 介绍项目
  2. 问题
  3. 基础知识:java的多态、map和垃圾回收
  4. 如何用网络知识让抢火车票更快
  5. 快排的思想、时间和空间复杂度、如果是整数排序有没有O(n)的解法
  6. 逻辑回归线性回归区别
  7. linux怎么查看某文件当前被哪些进程访问
  8. vim如何查找替换

百度运维一面(电话面)

  1. 聊项目
  2. python字符串的替换
  3. SQL的优化
  4. LInux 如何找进程杀进程

百度运维二面(现场面)

  1. 聊项目
  2. 手写冒泡

行云智能一面(现场面)

遇到面试官是西电校友

  1. 聊项目
  2. CNN的思想:pooling的方式、卷积的思想
  3. 设计模式有什么了解
  4. 多线程多进程的了解
  5. 快排的思想
  6. 手写代码二叉树删除

中科乐创一面(现场面)

最尴尬的一次,面试官是南洋理工的,聊了聊我的项目就似乎对我不感兴趣,就开始和我聊家常。。。

鹏元数据一面(现场面)

  1. 聊项目
  2. 做了张试卷如
  • 推导极大似然估计
  • 聚类与分类区别,列举常用聚类算法及程序包
  • 一些简单的SQL命令
  • 编程题:列举一串数字内奇偶数出现次数及引申出的结合他们业务的评级转换矩阵的打印

腾讯基础研究一面(现场面)

  1. 聊项目
  2. 聚类与分类区别,常用聚类算法
    思考:诸如此类列举算法的问题,最好是迅速流利的列举出多个,不要有迟疑,不过对于其基本含义要有了解。
  3. 场景题,两个含有数字的文件,找出同时出现在两个文件内的数字;若文件太大放不进内存该怎么办?
    思考:这种问题可小可大,可难可易。因为哪怕再小的问题在规模变大也就是涉及到大数据都是不简单的,这个问题,对于小文件,两三行代码即可搞定,那么你写出来之后,面试官基本上就会进一步问你:如果文件很大,无法同时把这两个文件装进内存,怎么办?我当时回答的是用Pandas的read_csv分块读取,这是个很不好的回答,因为掉包不是基本功。我回头想了想,也许这个答案是用generator比较好。