蚂蚁金服一面

  已经第N次面阿里,从本科开始到现在研究生,实习面试,应届面试,每次都是阿里虐我千百遍,我视阿里如初恋。7月31号下午接到一个北京的电话,对面是蚂蚁金服,约了一下面试的时间,8月2号上午11点到12点面试。面试岗位是研发工程师C/C++,整个一面55分钟。
  1.自我介绍。
  2.面试官看了我的简历,我在上面写了一句“正在学习TensorFlow”,面试官问我是个人兴趣还是因为其他原因(我说个人兴趣)。之后问我都看什么资料,有没有实践,然后我提到了CNN,面试官接着问CNN有什么优点,跟传统的决策树和SVM相比在图像分类有什么优势。
  3.之后问我擅长的语言,我说C++,接着问了默认构造函数、拷贝构造函数的作用,什么时候使用,还有浅拷贝深拷贝的应用。
  4.之后开始问STL,说一说容器算法迭代器的关系,迭代器都有哪几种,适配器有哪几种,如果要用STL实现得到前k个小的数用什么函数(我答的用sort。。。),然后又问sort实现机制是什么,时间复杂度最好和最坏是多少,如果要实现最坏也是O(nlogn)复杂度的排序可以用什么(答了归并),之后让详细讲了一下归并的过程,归并的不足(空间复杂度O(n)),问还有其他什么也能达到O(nlogn)(然后答了堆排序),详述一下堆排序的过程(建堆,更新一系列过程)。
  5.邮件发了一个链接过来,登录上去在线写代码,题目是用一个函数实现给定字符串,去除前面和后面的空格,比如“  ab  cd  ”,最后得到的结果是"ab  cd",不能改变字符串的地址。写完之后,面试官说如果要测试,测试用例应该设计什么样子的。之后找到了我代码中的一点bug(我的代码对于字符串中全是空格的情况返回还是全空格,面试官的意思是说这种情况字符串中只用‘\0’就可以了),问我怎么改,最后让给出函数的时间复杂度,以及复杂度的常数项。
  6.最后让我问他问题,问了一些问题,最后问了一个问题(能评价一下我这次的面试以及我应该在哪些方面再进行一下提高吗),面试官笑着说学无止境,这个问题不好回答,然后两个人一起笑了起来。。。
  脑子最近不太好使。。不知道写的问题还有没有遗漏。。分享给大家,希望自己(++人品),自己心里还是很没底,有些问题答的稀烂。。。但愿还有二面,不要挂掉的太快。。。。
#阿里巴巴##C++工程师#
全部评论
前k个小的数那个应该用multiset,利用greater实现大顶堆,空间复杂度O(n),时间复杂度O(nlogk)
点赞 回复
分享
发布于 2017-08-03 23:37
sort的实现应该是插排,快排加堆排吧。这你怎么答的时间复杂度?
点赞 回复
分享
发布于 2017-08-02 18:07
淘天集团
校招火热招聘中
官网直投
厉害了。我c++一面到现在还没二面😂
点赞 回复
分享
发布于 2017-08-02 18:34
得到前k个小的数用优先队列,实际上也是用的堆排序,维持一个k大小的大顶堆,用make_heap相关几个函数就好了,直接sort的话如果数组很大白排了那么多的元素。 要是是前k大的数的话要多加个仿函数,自定义比较大小。 楼主你有问你面的部门做机器学习吗?我也是C++岗,不会机器学习好慌...
点赞 回复
分享
发布于 2017-08-02 19:17
不能改变字符串的地址。。。。以java的角度思考了好久。。
点赞 回复
分享
发布于 2017-08-02 20:46
蚂蚁金服不是在成都吗?
点赞 回复
分享
发布于 2017-08-02 23:50
字符串去掉空格那个是用一个指针把第二个开始的字符一个个的往前一个位置复制来实现吗?
点赞 回复
分享
发布于 2017-08-03 23:38
祝楼主好运,原来是友校的
点赞 回复
分享
发布于 2017-08-07 15:39
前k小不应该是nth_element()函数?
点赞 回复
分享
发布于 2017-08-17 18:44
lz现在几面了?
点赞 回复
分享
发布于 2017-08-17 21:35
用STL实现得到前k个小的数用什么函数。 这个貌似可以用partial_sort,其底层是用最大堆来实现的。
点赞 回复
分享
发布于 2017-08-20 17:34

相关推荐

4 59 评论
分享
牛客网
牛客企业服务