当前位置:   article > 正文

2018年满满的春招面经 | 掘金技术征文

2018年满满的春招面经 | 掘金技术征文

渣硕一枚,春招投了很多简历,通过面试也学到和很多东西,分享一下面经。

阿里电面

项目,主题模型

一个数据流,只能访问一次,如何保证访问每个数据的频率相同

c++11 future和promise

epoll,libev优点

构造函数能不能重写(没听清要问什么)

面向对象的优点:更易维护,增加代码的重用

大文本如何排序

最优二叉树(我说数据结构比较熟,他说那我考你一个最优二叉树。没答出来,以为是排序二叉树。。如果问我哈夫曼树我就会了。。)

栈和队列

栈空间,堆空间,静态区

栈区:有编译器自动分配释放,堆区:由程序员分配释放

静态区:全局变量和未初始化的静态变量

kmeans

mongodb了解吗?

linux如何扩大分区

之后探讨了一下今后发展方向,我说研究和工程比较偏工程,他好像不怎么满意的样子,已挂。

腾讯电面(没内推,被捞起来了):

map用的是红黑树,和AVL树的区别

map插入和删除需要注意什么

mongodb 和 mysql 差别

IO多路复用方式的区别

如何查看函数所占用的内存

gdb如何debug

python数据处理库,numpy和pandas

C++多态是怎么实现的,哪些函数不能是虚函数(构造函数,静态函数,inline函数)

25u-50结果是多少,u代表unsigned

malloc(0)返回什么: 如果请求的长度为0,则标准C语言函数返回一个null指针或不能用于访问对象的非null指针。

回复等通知,不过我感觉挂了,微信里面也查不到状态。

头条视频面(3月31号):

一面:

项目

mongodb,mysql,redis

redis中hash的结构

签到的表设计

flask,sqlalchemy

mongodb,mysql, redis的不同点

b+树,存储方式

https和http的不同

http返回码

查找最长回文串(可以动态规划)

https://blog.csdn.net/shineboyxxb/article/details/52079360

我写了个暴力,给我过了

二面:

项目

mysql的引擎,区别(myisam, innodb)

mysql,mongodb各种索引是什么,区别

多进程和多线程的不同

多进程和多线程的同步

静态变量什么时候初始化

mysql四种隔离状态

MVCC

[0, n), n个数,范围[0, n-1], 求是否有重复方法

求第k大的数的方法以及各自的复杂度

当有相同元素时,求第k大的元素的方法(类似快排,手撕)

三面:

项目

什么时候会发生segmentfault

ip地址有什么用,ip地址和mac地址

系统中断是什么,用户态和内核态的区别

给你一个数组,再给你几对数,这几对数只能够同时出现或者不同时出现,求拿出k个数的可能性(true or false)(手撕,dfs标号+dp)

官网状态还在面试中,估计还是备胎,基础答的不够好,但是还好代码都写出来了。

酷家乐(现场面):

一面:

项目

实现一个买票系统:实现买票,退票,检票。给一个小时,手撕,文件流+map搞一下就行了,API之类的可以百度。

二面:

项目

数据流,如何获取中位数,复杂度

一到一百万的素数,怎么快速求

有一堆数,再给你很多对数,每对数都在同一个组,求一共有多少组数

有很多蜡烛,每根蜡烛1个小时,求15分钟怎么计时

三面:

数据库mongodb和mysql的不同

innodb的4种隔离方式

索引相关的东西

如何设计一个分布式配置系统,更新配置之后1秒钟内能够同步所有客户端(这个答的不太好,因为分布式基础比较薄弱)

四面:

家常

已拿offer,酷家乐面试体验是最好的,而且公司环境不错,很看好公司的发展。不过我太熟悉Java,还是想写C++。所以没去。

网易游戏(视频面):

一面:

自我介绍

介绍一个项目

数据库了解吗?

为什么析构函数要是虚函数,为什么c++没有默认析构函数为虚函数

1.模板成员函数不可以是虚函数 https://blog.csdn.net/zzuchengming/article/details/51763563

2.C++里面有很多小类,如果都有虚析构函数,则会对每个类都加一个虚表指针,浪费内存

1/x + 1/y = 1/n

求最小的n,使得对数超过1000

刚开始推了个公式,写了个暴力,解释给面试官听,不过面试官没听懂,然后他告诉我解的方法,也是暴力,又重新写了一遍,还是没跑出来。面试结束之后才跑出来,跑了10多分钟,答案是180180(不知道答案对不对)

二面:

介绍一个项目

C++11 的新特性

auto,shared_ptr, weak_ptr, unique_ptr

forward, move完美转发

RAII机制,lock_guard

java,可达性分析

新生代,老年代

C++11的template和java的范型区别

https://www.zhihu.com/question/33304378

如何制作一个游戏,当用户到达一个视野之后,怎么更新怪物

怪物有愤怒值,怎么去设定这些事

离散化,染色

这次二面体验很好,有些问题不会面试官会一步步引导你怎么做,涨了很多姿势。

目前不知道有没有三面,不过腾讯已经收到offer了,所以应该不会面了。

腾讯现场面

腾讯一面:

自我介绍

手撕:

1.字符串去空格

2.十六进制转十进制

如何求前100大的数

堆和栈的区别

全局的const,在函数里面改const的值(没理解面试官问什么)

io多路复用,为什么epoll比较好,什么时候select比较好

两种触发方式

进程间通信

共享单车如何分配

有一户家庭,生了两个娃,其中一个是女孩,另外一个是女孩的概率

栈实现队列,队列实现栈

STL set用什么实现,为什么用红黑树实现

hash用在什么地方

各种排序空间复杂度和时间复杂度,稳定程度

快排什么时候最不稳定

linux基本命令

查看进程,线程,函数的cpu占用

gdb

字节序,网络序是什么字节序,为什么会有不同的字节序

腾讯二面:

介绍了一下组是做什么的

自我介绍

在学校里面学了什么

怎么学习的

项目介绍

手撕:求一个集合的所有子集,递归实现,非递归实现

本来想问一下围棋怎么数目,不过不懂围棋的规则,所以面试官换了下面的一个题

手撕:去除包含4的数字,求一个数字是第几个数,比如5是第四个数(数位dp)

腾讯hr面:

问了一下自己在学校中和自己家庭的一些情况。

问了一下自己今后的职业发展。

反正随便聊天,面试官蛮亲切的。

19号收到offer,原来我一直以为我是SNG的,收到offer居然是TEG的 233

微软现场面:

一面:

稍微问了一下项目,介绍了一下组,是做云存储的。

手撕:

有一个楼梯,一共有n层,可以走a步,也可以走b步,问最高能走到哪里?(dp,O(n))

增加一个条件,有一次条件可以回退一半,比如本来在第8层,可以有一次机会直接到第4层。(两次dp,O(n))

二面:

手撕:

一个数组,里面大多数都是成对的,只有两个数没有成对,求这两个数(异或搞一下,把数组分成两组)

设计题:

get(), 每次取最小的数 Release(int num),释放num 比如调用3次get(),依次得到1, 2, 3 如果调用一次Release(2),再执行get(),会返回2 这个就相当于linux里面的文件描述符,每次往小的取。 我直接用优先队列(最小堆)和map(因为Release可能会对一个数字释放两次,所以要记录有没有释放过)实现的。 写test case

三面:

手撕:

求一个栈的pop序是否合法。

int to string,

string to int。

这两个是库函数,要注意各种情况,比如string to int的时候,数字越界要抛出异常,要考虑负数,前置0等情况。

写出test case.

题目不是很难,主要是看你写代码的严谨性。

微软的面试一般有两轮,两轮之后如果面试官觉得你还不错则会有3面。微软基础不怎么会问,基本上都是考算法,要你站着用水笔在白板上写代码(比用纸写累好多),面试官也会非常重视test case,基本上每个问题代码写好之后都要你自己设计test case。 面试结束之后回去等结果,感觉问题不是很大(火车票,住宿费全报销,这点不错)。

最后

最终选择了腾讯,家在杭州,深圳有点远。不过对于快要毕业的人来说多去远方看看也蛮好。祝大家都能够拿到想要的offer~

掘金技术征文链接? juejin.im/post/5aaf2a…

转载于:https://juejin.im/post/5ad9b9e76fb9a07ab773c2d3

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/602452
推荐阅读
相关标签
  

闽ICP备14008679号