前言
2019年年初的时候我就开始偷偷投简历了。因为在之前从事的即时通讯企业做的不开心了,客户产品善变,公司开会贼多。当然最关键的还是工资没给到位,事情都做了,却TMD不给升职加薪,因此心里窝火,也为了再次向社会证明我的价值和能力。
移动互联网的普及和智能终端设备的广泛应用,短视频、直播、在线教学1V1等各类形式的实时音视频通信模式风靡大众,成为人们日常沟通的新模式。
已经形成南抖音北快手格局。音视频火热兴起,因此我把目光也瞄准了这两个企业。
面试快手初尝失败滋味
自我介绍+项目
解释一下JNI中全局引用和局部引用的区别和使用
Linux几个常用的跟进程和线程有关的命令(具体的也记不清了)
怎么定位NDK中的问题和错误
http请求过程,http和https的区别
七层和四层分别是啥,TCP和UDP特点和使用场景
DNS存在的意义(当时感觉有点懵,直接说了忘了,后来看了一下贼简单,悔恨+++++++)
线程和进程的区别,特点
死锁
进程间通信方式
指针和引用的区别
指针常量和常量指针的区别
多态(balabala一大堆),继承和封装的特点和区别
创建一个进程操作系统内部都干了啥
进程pid怎么做到唯一标识的(不会)
根进程有哪些(开始这三个问题答得都不好,心都凉了,感觉他想刷掉我了,然后开始写代码)
第一个:孪生素数(三种解决思路吧,当时第一种可能效率不是最优的,说了第二种,面试官:还有什么提高效率的,我:???有点没看出来,最后他给我说了一个小点,舍去重复计算的一行代码)
第二个:场景题。(面试官:我看你参加了几次说学建模,说一个场景,你觉得他像什么模型。我:像多级缓存器吧。面试官:方向是对的,不过你说的是***,但是这道题是一个buffer。大概讲了一下buffer的使用)大概就是地铁早高峰一般会加一个屏障类的东西,问最大人流量之类的,考虑的因素比较多,但是难度还可以,大概模拟了一下,写了一个简单的代码,主要是为了标明思路。
第三个:棋盘从左上到右下的走法(比较常见),说的是递归的方式,不过我最后写还是用dp写的,主要也是比较怂,害怕递归的边界条件出错。
线程死锁,发生的情况(记不清了,就大概说了两种场景)
从键盘输入一个字符到显示在屏幕上发生了啥(说了一下大概,没细说)
直接说前面的代码写的还不错,算法应该还可以,那就再写几个吧。我:。。。我尽力写吧
第一个:二叉树前序遍历的同时输出深度(不能用递归),我分开写的前序遍历和深度,他就说效率有点低吧,我:深度的话平时用递归比较多,不用递归的话暂时就能考虑折磨多了。面试官人很nice,说了一个小点
第二个:手动实现strlen,代码挺简单地,四行就行。但是问到一个很难形容的点。面试官:64位下,假设字符长度为8,实际操作过程中是把这8位从64位中剪出来处理之后又放回64位中,怎么才能手动提高效率,就是去掉剪裁的过程。这个感觉面的时候很懵逼,题目甚至理解错了,最后说了一个思路,但可能效率不太高,第二种思路是错的。
第三个:问了说指针访问内存越界,系统或者说编译器是怎么判断它出现越界的,访问情况啥的
这个大概说了一下,感觉一般很少去编译器的角度看一些细节,说的浅一点是对的,深一点的话,我给他测试了一下,说了想法,感觉没什么问题,但是可能一些细节还是不太对,这个可能还要在研究一下(本人比较菜,没办法)
第四个:逻辑题:地球(正球体)上某一个点,向北100m,向东100m,向南100m。走完这三步,回到了原点,这个原点的位置在哪。 说了一个,问还有那个点,当时想不到了,现在发现这个点还挺多的(就感觉面试的时候脑子被吃了)
第五个:一个整型数组,每一个元素形成的值类比到柱状图上,最大蓄水量
大概说了思路,考虑的几种情况,跟自己做过的某一类数学题的思路有相似之处,两个题考虑的情况有什么不同(面试官:思路是正确的,但是应该不是最优的。我:的确不是最优的,但是可能是我现在想的太复杂了,我只是觉得考虑的情况可能会很多,暂时的话没有想到更好的)
最后,还有什么问题问我
全部评论
(3) 回帖