小米Java一面面经

#小米面试#
没答上来的题:
1.hashset底层结构 hashmap(战战兢兢答的)
HashSet的实现原理总结如下:
①是基于HashMap实现的,默认构造函数是构建一个初始容量为16,负载因子为0.75 的HashMap。封装了一个 HashMap 对象来存储所有的集合元素,所有放入 HashSet 中的集合元素实际上由 HashMap 的 key 来保存,而 HashMap 的 value 则存储了一个 PRESENT,它是一个静态的 Object 对象。

②当我们试图把某个类的对象当成 HashMap的 key,或试图将这个类的对象放入 HashSet 中保存时,重写该类的equals(Object obj)方法和 hashCode() 方法很重要,而且这两个方法的返回值必须保持一致:当该类的两个的 hashCode() 返回值相同时,它们通过 equals() 方法比较也应该返回 true。通常来说,所有参与计算 hashCode() 返回值的关键属性,都应该用于作为 equals() 比较的标准。

③HashSet的其他操作都是基于HashMap的。


2.hashmap的key为空时怎么办?
hashMap是根据key的hashCode来寻找存放位置的,可以看到,前面那个for循环,是在talbe[0]链表中查找key为null的元素,如果找到,则将value重新赋值给这个元素的value,并返回原来的value。
如果上面for循环没找到则将这个元素添加到talbe[0]链表的表头。

3.tcp断开连接的步骤 面试官说说的太大 每一步都应有明确的步骤 比如第一次客户端向服务端发送请求想要说的是“数据已经发送完了” 我说的是客户端发送一个SYN=1 ACK=1的想要断开连接的请求
结合已有总结如下:
首先客户端发送一个连接释放报文,FIN=1(我的数据发送完了)
返回一个确认报文,tcp连接处于半关闭状态,B能向A发送数据但A不能向B发送数据
不再需要连接时,发送连接释放报文,FIN=1
A收到后发送确认,进入TIME_WAIT状态,等待2msl释放连接
B收到A确认后释放报文

4.手撕1. 二叉树层序遍历未判空 运行时报空指针异常 通过0

5.手撕2. 利用快排思想寻找第K大 AC 面试官在此处引导很多 如何优化 无非是省时间或空间 通过比较减少交换次数 最终引导出根据K可剪枝一些不必要的排序(递归过程)

6.滑动窗口何时变化 我回答的是接收端来不及接收时会变小 防止分组丢失 面试官文还有其他什么情况?

总结:Java基础(答得较好)+手撕代码(第一题没改出来 第二题没用快排思想 但AC)+计网(理解不够深刻)
面试官说后端竞争激烈 建议试试客户端 晚上等是否有二面
#面经##校招##小米##Java工程师#
全部评论
楼主你好,请问你是实习、校招还是社招?
1
送花
回复 分享
发布于 2020-11-10 13:59
对呀,不是说只有一轮面试的吗?
1
送花
回复 分享
发布于 2020-11-10 18:56
秋招专场
校招火热招聘中
官网直投
hashcode一样不一定equals一样。只是大部分情况一样,但是有可能出现撞哈希的情况。equals就是用来解决这种情况的。加入等效了,那干嘛还需要两个函数
1
送花
回复 分享
发布于 2020-11-23 13:55
楼主好,请问你小米的补招是在哪里投递的啊,有内推渠道么
点赞
送花
回复 分享
发布于 2020-11-10 14:55
跟我面的一样,我刚面完,应该是一个面试官
点赞
送花
回复 分享
发布于 2020-11-10 15:21
补招不是说只有一面么
点赞
送花
回复 分享
发布于 2020-11-10 15:29
感谢同学的分享!邀请同学参加秋招面经征集活动哟, 只要把面经链接放到技术专场下面,就有机会领奖品了哟~ 活动链接:https://www.nowcoder.com/discuss/445455
点赞
送花
回复 分享
发布于 2020-11-10 15:58
是手机部的吗
点赞
送花
回复 分享
发布于 2020-11-10 18:16
楼主楼主,其他题可以分享下嘛😊
点赞
送花
回复 分享
发布于 2020-11-10 18:47
楼主,是手机部的专项补招吗
点赞
送花
回复 分享
发布于 2020-11-11 01:05
我也是补招,今天一面完一会就收到二面通知了
点赞
送花
回复 分享
发布于 2020-11-11 01:08
题目都好难啊。
点赞
送花
回复 分享
发布于 2020-11-11 10:05
是手机部的吗
点赞
送花
回复 分享
发布于 2020-11-11 13:08
同学收到通知了吗
点赞
送花
回复 分享
发布于 2020-11-11 15:37
那我不会java,岂不是要宣布放弃了。。。
点赞
送花
回复 分享
发布于 2020-11-19 09:56
二面了吗楼主,问的问题大致是哪些
点赞
送花
回复 分享
发布于 2020-11-23 12:01
等你更二面面经
点赞
送花
回复 分享
发布于 2020-11-23 22:49
楼主请问测评完几天会有结果呀
点赞
送花
回复 分享
发布于 2020-11-25 19:21

相关推荐

#简历#先说一说我自己的想法,很多人都很排斥苍穹外卖,认为没什么技术点和含金量,但实际上我觉得恰恰相反,苍穹外卖虽然代码本身并不是你自身能力的证明,但是是作为一个新人学习时很好的跳板和原始框架,在这个框架上进行的改进可以很好的辐射到你自己的个人成果上,并作为你和面试官聊天的筹码大多数人的苍穹外卖只写增删改查,千篇一律,吸引不了面试官,所以这才让大家误以为只要是苍穹外卖就不要写进简历里这种误区,但实际上如果你在原有的层面上进行改进,并作为你的项目亮点和面试官介绍,告诉他你的苍穹外卖和别人的有什么不同,增加了哪些技术难点,这才显得你是完全自己理解了这个项目,并且有自己动手实践项目的能力,而不是就看了个课程就以为自己会了,就当成自己的了,如此一来,这反而成为你的加分项苍穹外卖为什么看的人最多,说明它好啊,如果它不好,为什么看的人还这么多,想清楚这个逻辑,我觉得要做的最重要的事,就是如何在原有框架上进行改进提效,比起听其他人的话重新搞一个项目性价比高得多,而且我亲测项目并没有成为我找到工作的阻碍,我投的大厂一大半都给我面试了,而且很多不止一个部门,退一万步说,当你手头没有其他项目的时候,有苍穹外卖总比什么都没有的好很多,不需要因为苍穹外卖有任何心理负担关于简历的任何部分都欢迎大家提意见,十分感谢大家,祝大家找实习+秋招顺利上岸,offer拿到手软#简历中的项目经历要怎么写##我的上岸简历长这样##最后再改一次简历##简历##简历被挂麻了,求建议#
点赞 评论 收藏
分享
8 126 评论
分享
牛客网
牛客企业服务