【华为上机考试】华为机考,看这一篇就够了
西安华为OD大数据部门持续招聘,欢迎联系!!!
1. 前面的话
OD机考:练习到什么程度OK, 2h30min时间能够做出2个leetcode中等题目或者1个中等、2个简单的题目。But 练习一定要以中等题目练习为主2h30min,3个题目,2个简单分值100,1个中等分值200,分值越高越好。
实习生机考、应届本硕秋招机考、留学生机考、博士机考:2h, 3个题目,总分600, 100分合格。3个题目分值:100,200,300。练习到什么程度OK, 2h时间能够做出1个leetcode中等题目即可,当然从录取角度,当然越高越好
关键稀缺、软件特战队机考:90min, 2个题目,总分400, 320(部分岗位360) 分合格,2个题目分值:200,200。练习到什么程度ok, 90min合格即可,大概90min做出2道leetcode中等题目难度
2. 机考重点考察方向
进制与位运算  | 位运算、进制转换、进位计算等  | 
基础数据结构  | 字符串(字典树等)、线性表(字符数组、静态数组动态数组)、队列、栈、链表、哈希/Map  | 
高级数据结构  | 树(二叉查找树、二叉树)  | 
堆(优先队列、二叉堆)  | |
图重点考核深搜、广搜,不考图论  | |
常用算法及应用  | 排序及查找  | 
枚举(遍历、排列、组合)、模拟,其他(滑窗、双指针、前缀和)  | |
迭代、递归、回溯、分治(归并、二分等)、搜索(深搜、广搜)、贪心  | 
3. 牛客练习题库
https://www.nowcoder.com/ta/huawei
PS: OD考试也是采用该方式机考,需要自行处理输入输出,写main函数
4. LeetCode练习题库
以下题目为开通leetCode会员后解锁的HW公开题库。题目已按照出题概率降序排列,取前200道题目,后面的题目出题概率很低就不列举了,供参考
PS: hard直接跳过,hard直接跳过,hard 直接跳过,重要的事说三遍,机考基本没有这个难度
序号  | 题目  | 通过率  | 难度  | 
1  | 45. 跳跃游戏 II  | 43.60%  | 中等  | 
2  | 1190. 反转每对括号间的子串  | 65.10%  | 中等  | 
3  | 781. 森林中的兔子  | 61.30%  | 中等  | 
4  | 739. 每日温度  | 68.30%  | 中等  | 
5  | 3. 无重复字符的最长子串  | 38.30%  | 中等  | 
6  | 46. 全排列  | 78.40%  | 中等  | 
7  | 475. 供暖器  | 40.20%  | 中等  | 
8  | 20. 有效的括号  | 44.60%  | 简单  | 
9  | 394. 字符串解码  | 55.50%  | 中等  | 
10  | 179. 最大数  | 41.00%  | 中等  | 
11  | LCP 09. 最小跳跃次数  | 28.00%  | 困难  | 
12  | 135. 分发糖果  | 48.70%  | 困难  | 
13  | 面试题 17.24. 最大子矩阵  | 52.20%  | 困难  | 
14  | 1. 两数之和  | 52.20%  | 简单  | 
15  | 2. 两数相加  | 41.20%  | 中等  | 
16  | 42. 接雨水  | 59.10%  | 困难  | 
17  | 22. 括号生成  | 77.30%  | 中等  | 
18  | 554. 砖墙  | 50.40%  | 中等  | 
19  | 547. 省份数量  | 61.90%  | 中等  | 
20  | 55. 跳跃游戏  | 43.40%  | 中等  | 
21  | 621. 任务调度器  | 57.50%  | 中等  | 
22  | 1047. 删除字符串中的所有相邻重复项  | 72.50%  | 简单  | 
23  | 514. 自由之路  | 49.90%  | 困难  | 
24  | 5. 最长回文子串  | 36.00%  | 中等  | 
25  | 14. 最长公共前缀  | 41.50%  | 简单  | 
26  | 300. 最长递增子序列  | 52.20%  | 中等  | 
27  | 56. 合并区间  | 47.50%  | 中等  | 
28  | 200. 岛屿数量  | 56.40%  | 中等  | 
29  | 11. 盛最多水的容器  | 62.20%  | 中等  | 
30  | 799. 香槟塔  | 41.40%  | 中等  | 
31  | 316. 去除重复字母  | 47.70%  | 中等  | 
32  | 392. 判断子序列  | 51.70%  | 简单  | 
33  | 85. 最大矩形  | 51.90%  | 困难  | 
34  | 206. 反转链表  | 72.50%  | 简单  | 
35  | 221. 最大正方形  | 48.00%  | 中等  | 
36  | 32. 最长有效括号  | 35.80%  | 困难  | 
37  | 62. 不同路径  | 66.60%  | 中等  | 
38  | 146. LRU 缓存  | 52.40%  | 中等  | 
39  | 130. 被围绕的区域  | 44.90%  | 中等  | 
40  | 679. 24 点游戏  | 54.00%  | 困难  | 
41  | 70. 爬楼梯  | 53.30%  | 简单  | 
42  | 17. 电话号码的字母组合  | 57.50%  | 中等  | 
43  | 19. 删除链表的倒数第 N 个结点  | 43.30%  | 中等  | 
44  | 15. 三数之和  | 34.20%  | 中等  | 
45  | 151. 翻转字符串里的单词  | 49.10%  | 中等  | 
46  | 957. N 天后的牢房  | 36.10%  | 中等  | 
47  | 518. 零钱兑换 II  | 66.50%  | 中等  | 
48  | 139. 单词拆分  | 52.00%  | 中等  | 
49  | 剑指 Offer 45. 把数组排成最小的数  | 55.80%  | 中等  | 
50  | 410. 分割数组的最大值  | 57.00%  | 困难  | 
51  | 47. 全排列 II  | 64.20%  | 中等  | 
52  | 860. 柠檬水找零  | 58.60%  | 简单  | 
53  | 90. 子集 II  | 63.40%  | 中等  | 
54  | 980. 不同路径 III  | 73.50%  | 困难  | 
55  | 471. 编码最短长度的字符串  | 60.40%  | 困难  | 
57  | 93. 复原 IP 地址  | 54.80%  | 中等  | 
58  | 224. 基本计算器  | 41.80%  | 困难  | 
59  | 4. 寻找两个正序数组的中位数  | 41.10%  | 困难  | 
60  | 88. 合并两个有序数组  | 51.90%  | 简单  | 
61  | 692. 前K个高频单词  | 57.40%  | 中等  | 
62  | 38. 外观数列  | 59.70%  | 中等  | 
63  | 64. 最小路径和  | 69.00%  | 中等  | 
64  | 30. 串联所有单词的子串  | 36.30%  | 困难  | 
65  | 735. 行星碰撞  | 41.10%  | 中等  | 
66  | 165. 比较版本号  | 52.10%  | 中等  | 
67  | 354. 俄罗斯套娃信封问题  | 45.90%  | 困难  | 
68  | 1160. 拼写单词  | 68.70%  | 简单  | 
69  | 678. 有效的括号字符串  | 38.60%  | 中等  | 
70  | 102. 二叉树的层序遍历  | 64.20%  | 中等  | 
71  | 287. 寻找重复数  | 65.50%  | 中等  | 
72  | 16. 最接近的三数之和  | 45.80%  | 中等  | 
73  | 264. 丑数 II  | 58.10%  | 中等  | 
74  | 1293. 网格中的最短路径  | 36.50%  | 困难  | 
75  | 剑指 Offer 38. 字符串的排列  | 58.00%  | 中等  | 
76  | 40. 组合总和 II  | 61.50%  | 中等  | 
77  | 746. 使用最小花费爬楼梯  | 59.90%  | 简单  | 
78  | 974. 和可被 K 整除的子数组  | 46.70%  | 中等  | 
79  | 685. 冗余连接 II  | 42.80%  | 困难  | 
80  | 260. 只出现一次的数字 III  | 74.00%  | 中等  | 
81  | 37. 解数独  | 67.00%  | 困难  | 
82  | 72. 编辑距离  | 61.60%  | 困难  | 
83  | 695. 岛屿的最大面积  | 66.80%  | 中等  | 
84  | 36. 有效的数独  | 63.80%  | 中等  | 
85  | 84. 柱状图中最大的矩形  | 43.50%  | 困难  | 
86  | 148. 排序链表  | 66.60%  | 中等  | 
87  | 199. 二叉树的右视图  | 65.30%  | 中等  | 
88  | 121. 买卖股票的最佳时机  | 57.40%  | 简单  | 
89  | 322. 零钱兑换  | 44.80%  | 中等  | 
90  | 741. 摘樱桃  | 37.10%  | 困难  | 
91  | 214. 最短回文串  | 37.50%  | 困难  | 
92  | 406. 根据身高重建队列  | 74.00%  | 中等  | 
93  | 1162. 地图分析  | 47.10%  | 中等  | 
94  | 402. 移掉 K 位数字  | 32.70%  | 中等  | 
95  | 343. 整数拆分  | 61.00%  | 中等  | 
96  | 617. 合并二叉树  | 78.70%  | 简单  | 
97  | 387. 字符串中的第一个唯一字符  | 53.90%  | 简单  | 
98  | 76. 最小覆盖子串  | 43.10%  | 困难  | 
99  | 34. 在排序数组中查找元素的第一个和最后一个位置  | 42.30%  | 中等  | 
100  | 29. 两数相除  | 22.00%  | 中等  | 
101  | 105. 从前序与中序遍历序列构造二叉树  | 70.70%  | 中等  | 
102  | 451. 根据字符出现频率排序  | 71.20%  | 中等  | 
103  | 1109. 航班预订统计  | 58.50%  | 中等  | 
104  | 166. 分数到小数  | 33.10%  | 中等  | 
105  | 278. 第一个错误的版本  | 45.20%  | 简单  | 
106  | 207. 课程表  | 54.10%  | 中等  | 
107  | 875. 爱吃香蕉的珂珂  | 48.20%  | 中等  | 
108  | 134. 加油站  | 56.60%  | 中等  | 
109  | 剑指 Offer 22. 链表中倒数第k个节点  | 79.90%  | 简单  | 
110  | 611. 有效三角形的个数  | 53.30%  | 中等  | 
111  | 剑指 Offer 58 - II. 左旋转字符串  | 85.90%  | 简单  | 
112  | 面试题 02.05. 链表求和  | 46.70%  | 中等  | 
113  | 面试题 01.06. 字符串压缩  | 47.10%  | 简单  | 
114  | 剑指 Offer 59 - I. 滑动窗口的最大值  | 44.50%  | 困难  | 
115  | 155. 最小栈  | 57.60%  | 简单  | 
116  | 剑指 Offer 03. 数组中重复的数字  | 67.90%  | 简单  | 
117  | 面试题 08.11. 硬币  | 49.50%  | 中等  | 
118  | 剑指 Offer 50. 第一个只出现一次的字符  | 61.80%  | 简单  | 
119  | 994. 腐烂的橘子  | 51.10%  | 中等  | 
120  | 剑指 Offer 10- II. 青蛙跳台阶问题  | 44.70%  | 简单  | 
121  | 剑指 Offer 13. 机器人的运动范围  | 52.90%  | 中等  | 
122  | 1004. 最大连续1的个数 III  | 59.60%  | 中等  | 
123  | 1494. 并行课程 II  | 37.30%  | 困难  | 
124  | 1386. 安排电影院座位  | 31.80%  | 中等  | 
125  | 349. 两个数组的交集  | 73.90%  | 简单  | 
126  | 397. 整数替换  | 43.20%  | 中等  | 
127  | 63. 不同路径 II  | 39.60%  | 中等  | 
128  | 371. 两整数之和  | 61.30%  | 中等  | 
129  | 373. 查找和最小的K对数字  | 40.70%  | 中等  | 
130  | 面试题 17.21. 直方图的水量  | 63.60%  | 困难  | 
131  | 847. 访问所有节点的最短路径  | 67.90%  | 困难  | 
132  | 面试题 04.01. 节点间通路  | 53.10%  | 中等  | 
133  | 剑指 Offer 05. 替换空格  | 76.00%  | 简单  | 
134  | 面试题 16.19. 水域大小  | 61.50%  | 中等  | 
135  | 1723. 完成所有工作的最短时间  | 50.50%  | 困难  | 
136  | 874. 模拟行走机器人  | 42.00%  | 中等  | 
137  | 263. 丑数  | 51.40%  | 简单  | 
138  | 934. 最短的桥  | 47.10%  | 中等  | 
139  | 1497. 检查数组对是否可以被 k 整除  | 39.40%  | 中等  | 
140  | 1755. 最接近目标值的子序列和  | 42.00%  | 困难  | 
141  | 1100. 长度为 K 的无重复字符子串  | 69.90%  | 中等  | 
142  | 7. 整数反转  | 35.10%  | 中等  | 
143  | 43. 字符串相乘  | 45.00%  | 中等  | 
144  | 203. 移除链表元素  | 52.30%  | 简单  | 
145  | 242. 有效的字母异位词  | 64.80%  | 简单  | 
146  | 13. 罗马数字转整数  | 63.00%  | 简单  | 
147  | 41. 缺失的第一个正数  | 42.00%  | 困难  | 
148  | 58. 最后一个单词的长度  | 38.60%  | 简单  | 
149  | 198. 打家劫舍  | 52.10%  | 中等  | 
150  | 235. 二叉搜索树的最近公共祖先  | 66.80%  | 简单  | 
151  | 279. 完全平方数  | 63.70%  | 中等  | 
152  | 403. 青蛙过河  | 45.50%  | 困难  | 
153  | 415. 字符串相加  | 54.20%  | 简单  | 
154  | 442. 数组中重复的数据  | 69.80%  | 中等  | 
155  | 593. 有效的正方形  | 44.30%  | 中等  | 
156  | 94. 二叉树的中序遍历  | 75.60%  | 简单  | 
157  | 227. 基本计算器 II  | 43.70%  | 中等  | 
158  | 647. 回文子串  | 65.90%  | 中等  | 
159  | 204. 计数质数  | 37.70%  | 中等  | 
160  | 48. 旋转图像  | 73.70%  | 中等  | 
161  | 171. Excel 表列序号  | 71.70%  | 简单  | 
162  | 301. 删除无效的括号  | 54.80%  | 困难  | 
163  | 208. 实现 Trie (前缀树)  | 71.90%  | 中等  | 
164  | 1013. 将数组分成和相等的三个部分  | 39.40%  | 简单  | 
165  | 445. 两数相加 II  | 59.10%  | 中等  | 
166  | 350. 两个数组的交集 II  | 55.30%  | 简单  | 
167  | 870. 优势洗牌  | 43.90%  | 中等  | 
168  | 77. 组合  | 76.90%  | 中等  | 
169  | 539. 最小时间差  | 60.10%  | 中等  | 
170  | 881. 救生艇  | 53.80%  | 中等  | 
171  | 98. 验证二叉搜索树  | 35.30%  | 中等  | 
172  | 75. 颜色分类  | 60.00%  | 中等  | 
173  | 210. 课程表 II  | 54.70%  | 中等  | 
174  | 976. 三角形的最大周长  | 59.80%  | 简单  | 
175  | 850. 矩形面积 II  | 44.90%  | 困难  | 
176  | 605. 种花问题  | 33.20%  | 简单  | 
177  | 78. 子集  | 80.20%  | 中等  | 
178  | 560. 和为 K 的子数组  | 44.60%  | 中等  | 
179  | 234. 回文链表  | 50.30%  | 简单  | 
180  | 6. Z 字形变换  | 51.00%  | 中等  | 
181  | 44. 通配符匹配  | 32.90%  | 困难  | 
182  | 233. 数字 1 的个数  | 47.70%  | 困难  | 
183  | 1044. 最长重复子串  | 34.80%  | 困难  | 
184  | 820. 单词的压缩编码  | 51.00%  | 中等  | 
185  | 315. 计算右侧小于当前元素的个数  | 41.80%  | 困难  | 
186  | 172. 阶乘后的零  | 44.60%  | 中等  | 
187  | 39. 组合总和  | 72.70%  | 中等  | 
188  | 79. 单词搜索  | 46.00%  | 中等  | 
189  | 160. 相交链表  | 61.90%  | 简单  | 
190  | 223. 矩形面积  | 52.60%  | 中等  | 
191  | 338. 比特位计数  | 78.70%  | 简单  | 
192  | 468. 验证IP地址  | 25.40%  | 中等  | 
193  | 136. 只出现一次的数字  | 71.90%  | 简单  | 
194  | 142. 环形链表 II  | 55.50%  | 中等  | 
195  | 169. 多数元素  | 66.50%  | 简单  | 
196  | 188. 买卖股票的最佳时机 IV  | 39.90%  | 困难  | 
197  | 231. 2 的幂  | 50.50%  | 简单  | 
198  | 459. 重复的子字符串  | 50.90%  | 简单  | 
199  | 652. 寻找重复的子树  | 57.10%  | 中等  | 
200  | 97. 交错字符串  | 45.40%  | 中等  | 
查看9道真题和解析