【笔试面试】美团网-2016年校招-机器学习和数据挖掘

笔试

美团笔试也是线上笔试,分为选择题和编程题,选择题跟之前网上看到的题目很多都一样,编程题为3题,分别为:
1,求一个二维矩阵的最大横竖撇三个的最大值,这道题很简单的,只要穷举就可以了,但是我由于C++忘了比较多,导致程序调试出问题,忧伤。后面考完后发现是输入参数不兼容问题。
我的实现代码

2、求两个字符串的编辑距离,这个是比较常规的动态规划问题,比较简单,很容易做出来。
我的实现代码

3、第三题,是关于K-means 聚类的,由于时间都花在第一题调bug上了,就没有做这道题。

面试

由于笔试编程题目只做出一题出来,还以为没法进入面试环节,没想到周一上班的时候竟然接到了面试通知电话,比较惊喜。

时间:2015.10.16
地点:厦门港湾大酒店

一面

一面的环节就是自我介绍开始,然后问一些具体的问题,具体我忘了,有让现场写代码的,我这边让我写的是写一个cache替换策略的代码,有简化过,写好代码后,跟面试官沟通,基本没什么问题。

面试官问了第二个问题是:在二维坐标上的n的点(x1,y1),(x2,y2),…(xn,yn),求在二维坐标上找出一个点,使其到这些点的距离最近,当初不知道是太紧张了还是啥,竟然没有一下子想出来,然后罗列公式,求导之后,发现坐标点就是1/n(x1+x2+…+xn),1/n(y1+y2+…+yn),直观上也容易理解。

面试官将题目进行了更改,改为一维坐标上的N个点,分别为x1,x2,…,xn,在一维坐标上找出一个点,使其到各个点的距离之和最小。直观上,应该找这n个点的中位数。(首先需要证明我们要找的这个点可以在这n个点里面中,证明比较容易,就是在两个点之间的点到其它点的距离之和相同的,得证)。

一面也到了,出去外面等消息。

二面

二面的面试官明显不是做数据挖掘的,问了我一些计算机网络、系统相关的问题,我跟他反馈说这方面知识本科后就没怎么接触。
主要问题想起来了有几个吧
1, hash表的数据结构,沟通了很久才知道他想问的是hash表冲突之后的链式表处理。
2、cpu的几个替换策略。
3、现场写代码:关于两个字符串的距离(笔试就是考过编辑距离),它这边要求的是求两个字符串的与 跟两个字符串的或 的比值,也就是在所有的两个字符串的字符中,都出现的字符占所有的字符的比例问题,比较简单,写完代码之后,面试官指出哪一些可以优化的地方。
4、实习期间做的几个项目(面试官完全不懂,看自己的扯皮能力)
其它七七八八的问题忘了。

三面(终面)

三面是最为尴尬的,别人的三面都开始聊人生了,我的三遍问我技术性问题,纠结了我论文中的几个问题。
问了一个概率性的问题:
在一副扑克牌中,共54张,从中抽出7张,其中,我们定义有5张连续的牌为顺子,问能抽到顺子的概率。

在面试官的提醒下(顺子的几种情况),我得出答案为:

9*4^5*C49取2 /C54 取7

面试官没有说对不对。(计算上有重复,应该是错误的)

面试完之后,回到宿舍,发现了一个新的解法,就是分别考虑顺子长度为5,6,7的情况,这样的答案比较容易理解。
【笔试面试】美团网-2016年校招-机器学习和数据挖掘_第1张图片
最后问了下我哪里人,是否考虑在北京发展?
研究生期间最得意一件事情是什么??
还有什么问题要问的吗?
(每个面试官都问这个,我都是问他们目前团队的规模怎么样,有没有培训啥的,不知道他们有没有做登记)

(一周后,通知结果,知道自己肯定没戏,主要是三面出现了。)

面试总结

  1. 提前最好准备的,除了复习专业知识外,比我:自我介绍,问自己的优点、缺点、最成功的事情啊,这些非专业性问题还是得事先整理一下。
  2. 端正好面试的态度,总会碰到不会的问题。
  3. 每一次面试,都应该所有成长。

你可能感兴趣的:(【笔试面试】,面试)