华为终端面经

华为面试终于结束了,个人感觉华为终端面的挺硬核,面试官人都挺好,下面分享一下
一面(50min)
1.自我介绍
2.项目做了哪些事情,比较难的问题是什么,怎么解决的
3.看你项目C++用的比较多,你主要用到C++哪些内容?
4.看你刚刚提到了继承,你能聊一聊你项目中是怎么抽象出父类成员的(函数成员以及数据成员)?
5.数据成员抽象中,你用到了模板,能谈谈你对模板的理解吗?
6.模板与继承有什么异同?
7.你平时用C++什么版本的呢,新版本特性你知道多少?
8.谈一下Lamuda表达式,如果让你去实现Lamuda表达式,你会怎么实现?
这块我回答了两种方法:1.内联函数+函数指针;2.仿函数重载小括号
9.函数指针是怎么将参数传递进去的,能讲一下具体流程吗?
10.谈谈你对仿函数的理解
11.我看你项目主要做了嵌入式相关工作,你如何处理中断处理函数过长的问题?
12.你在写代码过程中做过哪些优化?
13.你能讲一讲怎么实现两个线程轮流打印,讲一下具体流程
14.讲一讲你的机考题目,第一题与第三题(因为我写出来这两题,所以他让我讲一下思路)
15.手撕类似加油站的问题
16.反问。


面试官人很好,遇到不会的会讲解
二面(1h20min)
1.自我介绍
2.C++多态实现
3.如果父类与子类都有static的变量,创建顺序是怎么样的?
4.空类中具有哪些函数?拷贝构造为什么要采用引用
5.堆与栈的区别,程序的分区
6.内存碎片问题是怎么产生的?怎么解决内存碎片的问题?答几种
7.指针与引用的区别
8.你常用的数据结构有哪些?
9.如果让你去实现一个vector,你会怎么做?
10.了解红黑树吗?红黑树插入一个节点后会怎么操作,能不能举例讲解一下
11.递归存在哪些问题,递归怎么改为非递归的函数?
12.BFS与DFS适用于哪些场景,能举例说明吗?
13.进程与线程区别,进程间通信方式,分别适用于哪些场景?
14.优先级反转问题
15.怎么加快代码运行速度,说几种
16.写题,类似leetcode烂橘子问题
17.反问



主管面
1.自我介绍
2.讨论项目的具体实现
3.期望城市
4.对华为文化的看法
5.反问


面完后进池子了,之前在牛客上总是看到终端挂人,有点慌,过了之后现在只希望华子能捞我

#华为面试##华为终端##华为##面经#
全部评论
确实硬核,八股和代码比我的难两个等级
1 回复 分享
发布于 2022-10-01 06:26 湖北
老哥具体是哪个部门
点赞 回复 分享
发布于 2022-10-08 14:58 江苏

相关推荐

其实无论是什么岗,实习一定是重中之重,那么怎么才能找到大厂实习呢?[语言方面]首先,大厂后端岗主要集中在java go python php这些语言中,请注意c cpp rust这几个语言属于大厂鸡架,游戏引擎,游戏客户端的招聘大岗,如果你想要去传统意义上的互联网后端,不要头铁学个cpp去冲互联网后端,大概率只会被鸡架部门等捞起来。在大厂后端青睐的java go python php这些语言中,有该如何选择呢?根据笔者三段大厂实习的经验,语言其实不重要,公司中的项目千奇百怪,什么语言的项目都有,你大概率都会接触到,笔者也是这四种语言都写过。不过作为面试而言,笔者推荐你选择从java go python这三个中选择两个双修(php不必要单独学,比较小众其实)比如java➕go  java➕python go➕python这样子。[语言八股准备]可以从以下几个方面准备对应语言八股[java]java推荐看javaguide上的八股,常会被问的有 java中的collections的底层原理 java并发相关 jvm相关 垃圾回收相关 spring的相关八股[go]go的八股常见的有channel原理 map原理 sync.map原理 slice原理 gmp模型 go中的垃圾回收等[python]python中常见的八股有  python装饰品深拷贝浅拷贝等不过从笔者的面试经验来看,语言八股不是很重要,大厂面试官不太关注你到底什么语言,他更关注你的项目经历和你的基础知识,而且每一次面试会重点问你一个项目经历,所以准备一个好的项目至关重要。[项目经历相关]项目经历又该怎么准备呢?如果你有过实习,那么恭喜你这次面试有的讲了,讲你的实习就ok的,一般面试官再不感兴趣,也能讲个10分钟的。如果你没有实习,那么你准备一个烂大街项目也是ok的,但是你要把名字改成你在学校做的项目,并且你要对这个项目非常熟悉。[面试一般流程]笔者多次大厂面试经验来看,一面一般是15分钟项目介绍,15分钟基础知识拷打,30分钟做题这么个节奏。二面会加大项目比重,可能全程项目,或者项目➕场景设计➕少量基础知识基础知识中,语言八股一般问的少,更多的还是问mysql redis 消息队列 操作系统 网络相关的基础知识。[基础知识相关]mysql中,笔者最常被问到的有 索引相关 锁相关 事务相关 日志相关redis中,笔者最常被问的是 redis常见数据结构 redis持久化相关 缓存击穿 缓存穿透 缓存雪崩消息队列中,你从kafka rocketmq rabbitmq等挑一个你喜欢的,把他的原理看看即可网络中最常问http和https区别https中ssl加密过程tcp相关操作系统最常问死锁进程线程区别有的面试难的话可能问你epoll的一些东西[场景设计]场景设计一般没有固定答案,但是笔者的经验来看,可以从下面这几个方面来设计:1.数据库方面:考虑索引优化,分库分表,集群部署2.缓存方面:考虑持久化,使用特定的数据结构来优化缓存存储,设计相关方案保证数据库和缓存的数据一致性3.消息队列引入,解耦高流系统4.限流算法引入,防止流量高负载一般来说,你从这四个方面和面试官扯,30分钟肯定扯下来了,面试也不需要说太细,考虑这些已经绰绰有余了。[总结]实习的过程,就是一个滚雪球的过程,如果一开始找大厂屡屡碰壁,不妨先找个中小厂,你会发现,有一段实习之后再找,会容易好多。#牛客激励计划# #牛客AI配图神器#
点赞 评论 收藏
分享
评论
9
75
分享

创作者周榜

更多
牛客网
牛客企业服务