网易互娱游戏开发一面凉凉凉经
本人非科班211本,且是笔试只A了第一道的弱鸡
面试官感觉比较随意,可能也没看过我的简历,听我自我介绍说是非科班,就直接让我说下大学学过的编程相关课程,然后问我有没有做过项目
没有打过编程类的比赛,也没有拿得出手的项目,属实让人感到凉凉
准备了很久的计算机网络和JVM相关一点都没有问,直接从数据结构开始
先问了数组跟链表的区别,哪些情况用链表,哪些情况用数组,在一个非常大的数据量中插入数据时用数组还是链表,一开始我呆了一下,感觉数组方便找到插入的位置,说了一半赶紧改口,大数据量的数组中插入数据这个操作需要后移的次数是相当可怕的,这样比起来还是用链表比较合适
接着问了hashmap的底层原理,就是数组套链表加hashcode加红黑树这些吧,大致说了一下
听我说了红黑树,他也顺带问了一下红黑树,也是把我知道的大致说了说
接下来问了堆的原理,还有一个这几天在面经里看烂的问题,输出数组前K大的数,我用最小堆口撕了一下,差不多说完之后,又让算一下时间复杂度
之后就是大家喜闻乐见的手撕代码环节
我是真没想到一个这么简单二分搜索的算法我可以写这么久,还是太菜了,太菜了
时间是用了些,写肯定还是写出来了,这个大家肯定都晓得写,我就不赘述了
最后手撕了一个我觉得是用动态规划解决的问题
0 1 2
3 4 5
6 7 8
手机滑动解锁问题,每次只能选相邻的数字,斜边也算相邻,比如0和4,每个数字最多出现一次,要求输出所有结果
拿个数组出来放每个数字可能有的全部路径,从0开始遍历,每次取这个数字可以到达的其他数字的存放结果,因为是输出所有结果不是路径总数,所以数组中默认存放的是这个数字本身,思路就这样吧,我也不知道对不对,最后也没完全编译跑,时间不够了
问面试官的问题,这个没啥好说的吧,我五点开始面的,面完快六点了,我感觉他也想结束了,我就问了下对之后学习路线的建议,然后就撤了
手撕环节写的比较烂,红黑树也就是了解一点点,还是太菜了,希望能过吧,还没面试的朋友们加油,就酱。
#网易互娱##面经##游戏研发工程师##实习#