当前位置: 首页 > 面试经验 >

华为二连面试

优质
小牛编辑
99浏览
2023-12-12

华为二连面试

下午两点开始,需要装客户端,面试链接没写,建议大家提前准备。
一面(1小时)
1.项目40分钟
2.笔试复盘15分钟
3.拥塞窗口5分钟
二面(1个半小时)
1.算法题25分钟:给定正整数数组和正整数k。数组中只含有0或1,可以最多k次将0翻转成1。求数组中最长连续1的长度。
2.项目20分钟
3.epoll在服务器之中如何使用
3.服务器SYN-RECV为什么会过多,怎么处理
4.死链和保活机制怎么设计
5.长连接和短连接区别,长连接断开如何恢复状态
6.原子性的软件(CAS)和硬件实现方式
7.互斥锁和自旋锁应用场景和区别
8.信号量如何使用
9.Linux内存分布
10.Linux虚拟内存如何实现
11.Linux内存分配Lazy行为
12.三级存储体系
13.内存屏障
14.cmake如何产生二进制文件
15.git提交流程和创建新的分治
16.gdb如何查看寄存器的值和变量内存
17.堆的实现
总结
华为面试官体验感拉满,如沐春风,如同和同学相处一般。
平时在准备面试的过程中,尽量将知识串起来。若在面试的回答中只能回答出该子问题的答案,那么大概率面试官会问另一个子问题,所以还是考验对知识的全面性掌握。例如提问堆的实现:我回答了堆分为小顶堆和大顶堆,一个自顶向下递减,一个自顶向下递增。其中构建堆的方式分为两种:一种为自顶向下构建,元素从顶向下对比左右孩子然后递归向下更新,时间复杂度为O(NlogN)。一种为自底向上构建,元素从插入点对比父节点然后递归往上更新,时间复杂度为O(N)。因此准备某个子问题的答案是远远不够的,需要找出该子问题的父问题并且做一个全面的了解和概述。
 类似资料: