【华为上机考试】华为机考,看这一篇就够了
25届秋招岗位已经上线了!!投递指南见:https://www.nowcoder.com/discuss/647778537503477760?sourceSSR=users
1. 前面的话
OD机考:练习到什么程度OK, 2h30min时间能够做出2个********中等题目或者1个中等、2个简单的题目。But 练习一定要以中等题目练习为主2h30min,3个题目,2个简单分值100,1个中等分值200,分值越高越好。
实习生机考、应届本硕秋招机考、留学生机考、博士机考:2h, 3个题目,总分600, 150分合格(4月份开始实施,难度有所增加)。3个题目分值:100,200,300。练习到什么程度OK, 2h时间能够做出2个********中等题目即可,当然从录取角度,当然越高越好
关键稀缺、软件特战队机考:90min, 2个题目,总分400, 320(部分岗位360) 分合格,2个题目分值:200,200。练习到什么程度ok, 90min合格即可,大概90min做出2道********中等题目难度
2. 机考重点考察方向
进制与位运算 | 位运算、进制转换、进位计算等 |
基础数据结构 | 字符串(字典树等)、线性表(字符数组、静态数组动态数组)、队列、栈、链表、哈希/Map |
高级数据结构 | 树(二叉查找树、二叉树) |
堆(优先队列、二叉堆) | |
图重点考核深搜、广搜,不考图论 | |
常用算法及应用 | 排序及查找 |
枚举(遍历、排列、组合)、模拟,其他(滑窗、双指针、前缀和) | |
迭代、递归、回溯、分治(归并、二分等)、搜索(深搜、广搜)、贪心 |
3. 牛客练习题库
https://www.nowcoder.com/ta/huawei
PS: OD考试也是采用该方式机考,需要自行处理输入输出,写main函数
4. ********练习题库
以下题目为开通********会员后解锁的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% | 中等 |