小米面试面经7


一面:java集合类有什么,让我详细说了下arraylist,linkedlist,hashmap数据结构。 如果我访问小米官网,整个通信的过程是什么样的,详细说一下。 三次握手。 shell脚本(刚问的时候我以为送分题,但是回答的时候这道题没答上来,好久没用shell了,好多方法都忘了) 服务器怎样应对海量访问,我说搭建服务器集群,前端服务器用nginx分流,运用负载均衡技术,然后说了下负载均衡算法……但是问nginx怎样应对海量访问,我没答上来。 手撕代码,找到一个数组里第k大的数,k远小于n,要求消耗尽量少。我写了个时间复杂度o(n*logk)空间复杂度(k)的。 然后让我出去等二面 二面:上来连自我介绍都没有,直接问一个算式向上取整。float型和0怎么比大小。 我直接懵了,这都没做出来。向上取整送分题但是可能紧张了蒙圈,比大小我是真的没注意过。然后回答给0强转说不对。现在想想应该是0*1.0?希望能有同学能回答下 接着又问了一道操作系统的,应该是跟缓存有关的但是我没记住具体是什么,还有一道计算机网络的,也不是书本上的知识没回答上,也记不住了。然后面试官降低难度问快速重传机制是什么……算是二面第一个能回答上的问题了 以上五道题一共用了5分钟时间,特别紧迫,面试官气场很强,我紧张的不行。 然后手撕了两道代码,第一道一个数组里有很多0,怎么把0都放在后面。时间复杂度o(n)空间复杂度o(1)我问需要保证非0是有序的吗?他说不用,然后我写了个,应该和他想的不一样,争论半天写的对不对最后承认我是对的,结果说“你这个是无序的,非0都乱了,你写个有序的” 我:…… 不过心情缓下来了 然后又写了个有序的,结果还是和他想的不一样,又一直觉得我有错,讨论了半天最后说我是对的。 第二道题是一个字符串如果有不配对的左括号或者右括号就给删了。不让用split,substring之类的方法。这道题比较简单没有异议直接过了。 两道题大概用了50分钟,主要是讨论时间特别长。 然后问我有没有用过什么小米的产品,我说我在用小米笔记本pro 他说感觉怎么样,有没有什么问题 我说电脑经常会“嗡”的一下,整个电脑都在震,声,音特别大,睡觉要是没休眠或者关机都要被吵醒。我上网查了下我这个问题不是个例。

你可能感兴趣的:(面试珠玑)