华为面试 2023/10/10(通用软件开发)
一面
深挖项目,有的直接答不上来
复盘笔试题
手撕算法题:找出一个数组中出现的次数大于数组大小的1/2的元素(力扣169),我使用的是unordered_map,(面试官问我我写的算法的时间复杂度和空间复杂度,我答不上来,时间复杂度主要是取决于unordered_map的底层实现,底层实现是哈希表,如何解决哈希冲突,继续深挖)
如果两个类功能基本一样,但是处理的场景稍微不同,但是各自的private函数也必须存在(有用),你要怎么抽象呢(我真的没听懂这个问题)
多个线程同时操作一个共享变量,加锁后串行访问的方式会降低程序的吞吐量,你要如何解决
http有了解吗
一面的面试官是架构师,问的问题太过深入,导致很多问题连记都没记住
二面
深挖项目
介绍一下论文,研究生课题
数组和链表的区别
介绍一下红黑树,红黑树是不是二叉树
介绍一下平衡二叉树
请介绍一下锁
进程和线程的区别
手撕算法题:求一个字符串的最大回文子串(力扣516),我只会用暴力求解,有点尴尬,进阶方法忘记了(写完之后进一步分析写的代码,时间复杂度和空间复杂度是多少,如何进行优化)
http有了解吗,tcp介绍一下,tcp如何实现可靠传输的,如果接收方没接收到怎么办
主管面
讲一下你做科研项目或者是自学的项目(因为我简历上的项目是自学的,跟科研的项目没关系)的一个整体的流程,你是怎么解决问题或者冲突的
讲一下你本科或者研究生阶段参加的一些活动,或者担任的职务
讲一下你的sci论文或者专利或者软著
有没有对象
业余生活是怎么样的
提起打篮球,面试官好像很感兴趣
你对华为怎么看,华为的企业文化或者价值观你认可吗,怎么认识华为的
我的主管面基本就是纯聊天
手撕就是在一张白纸上手撕,面试官说写出主要的方法就行,就是核心代码的模式,然后你写好之后对着你写的代码给面试官说一下你是怎么想的,要求并不是很苛刻
已进入华为池子,发面经攒人品,大家加油
#华为面试#