
华为OD机试(A/B/C/D/E)最新题库
文章平均质量分 80
华为OD机考算法题库(绝对都是原题),帮助你上岸华为(已经不少小伙伴成功上岸)。提供Java、Python、C++ 三种语言的解法。每篇文章都有详细的解题步骤、代码注释详细及相关知识点的练习题。有问题,随时解答。
优惠券已抵扣
余额抵扣
还需支付
¥69.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
什码情况
我们专注于算法辅导与面试辅导,提供系统化的学习方案,帮助你高效提升编程能力,顺利拿下技术面试!
我们的服务包括:
算法辅导:刷题提效、解题思维培养、专题训练(动态规划、图论、贪心等)
面试辅导:大厂面试真题解析、简历优化、模拟面试,助你拿下理想Offer
1V1个性化辅导,学习更高效!
无论你是初学者还是求职冲刺阶段,我们都能提供适合你的提升方案。
扫码添加微信(code5bug),免费试课,助你高效提升!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2024华为OD机试(E卷+D卷+C卷)最新题库(Java & Python & C++)
2024华为OD机试(C卷+D卷)最新题库(Java & Python & C++)关于华为OD 华为的员工补充途径有三种,分别是校招、OD转正和社招。校招是华为唯一的正式员工入职途径,但是从近几届开始竞争非常激烈,尤其是在CV、AI、NLP等赛道上,所以对于C9等专业的学生来说,可以考虑转向一些冷门方向。 OD转正是指在华为工作满一年之后,可以根据部门OD比例、是否来自目标院校、个人工作表现等因素来决定是否能转为正式员工。社招是指通过华为特定的招聘窗口进行投递,但审批流程相对较原创 2024-03-18 13:04:39 · 4763 阅读 · 1 评论 -
We are a team - 华为OD统一考试
OD统一考试题解: Java / Python / C++。总共有 n 个人在机房,每个人有一个标号 (1原创 2023-12-28 11:16:17 · 1946 阅读 · 0 评论 -
解密犯罪时间 - 华为OD统一考试(JavaScript 题解)
警察在侦破一个案件时,得到了线人给出的可能犯罪时间,形如 `HH:MM` 表示的时刻。根据警察和线人的约定,为了隐蔽,该事件是修改过的,解密规则为:利用当前出现过的数字,**构造下一个距离当前事件最近的时刻**,则该时间为可能的犯罪的时间。每个数字都可以被无限次使用。原创 2025-07-29 10:13:25 · 459 阅读 · 0 评论 -
经典屏保问题 - 华为OD机试真题(Java 题解)
DVD机在视频输出时,为了保护电视显像管,在待机状态会显示“屏保动画”,如下图所示,DVD Logo在屏幕内来回运动,碰到边缘会反弹。请根据如下要求,实现屏保Logo坐标的计算算法。1. 屏幕是一个800*600像素的矩形,规定屏幕的左上角点坐标原点,沿横边向右方向为X轴,沿竖边向下方向为Y轴原创 2025-07-31 21:24:37 · 856 阅读 · 0 评论 -
内存冷热标记 - 华为OD统一考试(Python 题解)
现代计算机系统通常存在多级的存储设备,针对海量的 wordload 的优化的一种思路是将热点内存页优化先放到快速存储层级,这就需要对内存页进行冷热标记。一种典型的方案是基于内存页的访问频次进行标记,如果统计窗口内访问次数大于等于设定阈值,要实现基于频次的冷热标记。内存页使用页框号作为标识。原创 2025-08-03 20:53:07 · 561 阅读 · 0 评论 -
经典屏保问题 - 华为OD机试真题(Python 题解)
DVD机在视频输出时,为了保护电视显像管,在待机状态会显示“屏保动画”,如下图所示,DVD Logo在屏幕内来回运动,碰到边缘会反弹。请根据如下要求,实现屏保Logo坐标的计算算法。1. 屏幕是一个800*600像素的矩形,规定屏幕的左上角点坐标原点,沿横边向右方向为X轴,沿竖边向下方向为Y轴原创 2025-08-01 07:00:00 · 1426 阅读 · 0 评论 -
两个字符串间的最短路径问题 - 华为OD统一考试(JavaScript 题解)
给定两个字符串,分别为字符串A与字符串B。例如A字符串为ABCABBA,B字符串为CBABAC可以得到下图m*n的二维数组,定义原点为(0, 0),终点为(m, n),水平与垂直的每一条边距离为1,映射成坐标系如下图。从原点(0, 0)到(0, A)为水平边,距离为1,从(0, A)到(A, C)为垂直边,距离为1;假设两个字符串同一位置的两个字符相同则可以作一个斜边,如(A, C)到(B, B)最短距离为斜边,距离同样为1。作出所有的斜边如下图,(0, 0)到(B, B)的距离为 1个水平原创 2025-07-28 20:51:09 · 400 阅读 · 0 评论 -
分苹果 - 华为OD统一考试(JavaScript 题解)
A 和 B 两个人要分苹果。A 希望按照他的计算规则得到平均分配的苹果,而 B 希望在满足 A 的条件下获得尽可能多的苹果量。A 的计算规则是按照二进制加法进行,并不计算进位。例如,12 + 5 = 9 (1100 + 0101 = 1001)。B 的计算规则是正常的十进制加法,包括进位。给定苹果的数量和每个苹果的重量,计算并满足 A 的要求的情况下,B 能获得的最大苹果总重量。如果无法满足 A 的要求,则输出 -1。原创 2025-07-30 20:43:10 · 706 阅读 · 0 评论 -
查找充电设备组合 - 华为OD统一考试(Java 题解)
某个充电站,可提供n个充电设备,每个充电设备均有对应的输出功率。任意个充电设备组合的输出功率总和,均构成功率集合P的1个元素。功率集合P的最优元素,表示最接近充电站最大输出功率p_max的元素。原创 2025-07-30 20:38:00 · 481 阅读 · 0 评论 -
内存冷热标记 - 华为OD统一考试(C++ 题解 )
现代计算机系统通常存在多级的存储设备,针对海量的 wordload 的优化的一种思路是将热点内存页优化先放到快速存储层级,这就需要对内存页进行冷热标记。内存页使用页框号作为标识。如果第一行大于 0,则接下来按照访问频次降序输出内存页框号,一行一个,频次一样的页框号,页框号小的排前面。个内存页框号,页面号范围 0 ~ 65535,同一个页框号可能重复出现,出现的次数即为对应框号的频次。第一行为输出标记为热内存的内存页个数,如果没有被标记为热内存的,则输出 0。第二行为访问内存序列,空格间隔的。原创 2025-08-03 20:50:15 · 510 阅读 · 0 评论 -
经典屏保问题 - 华为OD机试真题(C++ 题解)
DVD机在视频输出时,为了保护电视显像管,在待机状态会显示“屏保动画”,如下图所示,DVD Logo在屏幕内来回运动,碰到边缘会反弹。请根据如下要求,实现屏保Logo坐标的计算算法。1. 屏幕是一个800*600像素的矩形,规定屏幕的左上角点坐标原点,沿横边向右方向为X轴,沿竖边向下方向为Y轴原创 2025-08-01 11:30:00 · 1395 阅读 · 0 评论 -
经典屏保问题 - 华为OD机试真题(JavaScript 题解)
DVD机在视频输出时,为了保护电视显像管,在待机状态会显示“屏保动画”,如下图所示,DVD Logo在屏幕内来回运动,碰到边缘会反弹。请根据如下要求,实现屏保Logo坐标的计算算法。1. 屏幕是一个800*600像素的矩形,规定屏幕的左上角点坐标原点,沿横边向右方向为X轴,沿竖边向下方向为Y轴原创 2025-07-31 21:27:29 · 689 阅读 · 0 评论 -
推荐多样性 - 华为OD统一考试(Python 题解)
推荐多样性需要从多个列表中选择元素,一次性要返回N屏数据(窗口数量),每屏展示K个元素(窗口大小),选择策略:1. 各个列表元素需要做穿插处理,即先从第一个列表中为每屏选择一个元素,再从第二个列表中为每屏选择一个元素,依次类推2. 每个列表的元素尽量均分为N份,如果不够N个,也要全部分配完,参考样例图:(1)从第一个列表中选择4条0 1 2 3,分别放到4个窗口中(2)从第二个列表中选择4条10 11 12 13,分别放到4个窗口中(3)从第三个列表中选择4条20 21 22 23,分别原创 2025-08-03 20:44:20 · 628 阅读 · 0 评论 -
考古学家 - 华为OD统一考试(JavaScript 题解)
有一个考古学家发现一个石碑,但是很可惜发现时其已经断成多段。原地发现`N`个断口整齐的石碑碎片,为了破解石碑内容,考古学家希望有程序能帮忙计算复原后的石碑文字组合数,你能帮忙吗?**备注**: 如果存在石碑碎片内容完全相同,则由于碎片间的顺序不影响复原后的碑文内容,仅相同碎片间的位置变化不影响组合原创 2025-07-29 16:00:00 · 502 阅读 · 0 评论 -
推荐多样性 - 华为OD统一考试(C++ 题解)
推荐多样性需要从多个列表中选择元素,一次性要返回N屏数据(窗口数量),每屏展示K个元素(窗口大小),选择策略:1. 各个列表元素需要做穿插处理,即先从第一个列表中为每屏选择一个元素,再从第二个列表中为每屏选择一个元素,依次类推2. 每个列表的元素尽量均分为N份,如果不够N个,也要全部分配完,参考样例图:(1)从第一个列表中选择4条0 1 2 3,分别放到4个窗口中(2)从第二个列表中选择4条10 11 12 13,分别放到4个窗口中(3)从第三个列表中选择4条20 21 22 23,分别原创 2025-08-03 20:45:39 · 475 阅读 · 0 评论 -
红黑图 - 华为OD机试真题(JavaScript 题解)
众所周知红黑树是一种平衡树,它最突出的特性就是不能有两个相邻的红色节点。那我们定义一个红黑图,也就是一张无向图中,每个节点可能有红黑两种颜色,但我们必须保证没有两个相邻的红色节点。现在给出一张未染色的图,只能染红黑两色,问总共有多少种染色方案使得它成为一个红黑图。原创 2025-07-15 07:15:00 · 731 阅读 · 0 评论 -
打印文件/打印机队列 - 华为OD机试真题(Python 题解)
有5台打印机打印文件,每台打印机有自己的待打印队列。因为打印的文件内容有轻重缓急之分,所以队列中的文件有1~10不同的代先级,其中**数字越大优先级越高**。打印机会从自己的待打印队列中选择***优先级最高***的文件来打印。如果存在两个优先级一样的文件,则选择***最早进入队列***的那个文件。现在请你来模拟这5台打印机的打印过程。原创 2025-07-15 11:15:00 · 848 阅读 · 0 评论 -
打印文件/打印机队列 - 华为OD机试真题(C++ 题解)
有5台打印机打印文件,每台打印机有自己的待打印队列。因为打印的文件内容有轻重缓急之分,所以队列中的文件有1~10不同的代先级,其中**数字越大优先级越高**。打印机会从自己的待打印队列中选择***优先级最高***的文件来打印。如果存在两个优先级一样的文件,则选择***最早进入队列***的那个文件。现在请你来模拟这5台打印机的打印过程。原创 2025-07-14 21:30:00 · 957 阅读 · 0 评论 -
红黑图 - 华为OD机试真题(Python 题解)
众所周知红黑树是一种平衡树,它最突出的特性就是不能有两个相邻的红色节点。那我们定义一个红黑图,也就是一张无向图中,每个节点可能有红黑两种颜色,但我们必须保证没有两个相邻的红色节点。现在给出一张未染色的图,只能染红黑两色,问总共有多少种染色方案使得它成为一个红黑图。原创 2025-07-16 07:45:00 · 1138 阅读 · 0 评论 -
打印文件/打印机队列 - 华为OD机试真题(JavaScript 题解)
有5台打印机打印文件,每台打印机有自己的待打印队列。因为打印的文件内容有轻重缓急之分,所以队列中的文件有1~10不同的代先级,其中**数字越大优先级越高**。打印机会从自己的待打印队列中选择***优先级最高***的文件来打印。如果存在两个优先级一样的文件,则选择***最早进入队列***的那个文件。现在请你来模拟这5台打印机的打印过程。原创 2025-07-14 17:07:36 · 1228 阅读 · 0 评论 -
高效货运 - 华为OD统一考试(JavaScript 题解)
1. 老李是货运公司承运人,老李的货车额定载货重量为wt;2. 现有两种货物,货物A单件重量为wa,单件运费利润为pa,货物B单件重量为wb,单件运费利润为pb;3. 老李每次发车时载货总重量刚好为货车额定载货重量wt,车上必须同时有货物A和货物B,货物A、B不可切割;4. 老李单车次满载运输可获得的最高利润是多少。原创 2025-07-27 16:24:22 · 313 阅读 · 0 评论 -
打印文件/打印机队列 - 华为OD机试真题(Java 题解)
有5台打印机打印文件,每台打印机有自己的待打印队列。因为打印的文件内容有轻重缓急之分,所以队列中的文件有1~10不同的代先级,其中**数字越大优先级越高**。打印机会从自己的待打印队列中选择***优先级最高***的文件来打印。如果存在两个优先级一样的文件,则选择***最早进入队列***的那个文件。现在请你来模拟这5台打印机的打印过程。原创 2025-07-17 16:00:00 · 775 阅读 · 0 评论 -
中文分词模拟器 - 华为OD统一考试(Python 题解)
给定一个连续不包含空格字符的字符串,该字符串仅包含英文小写字母及英文标点符号(逗号、句号、分号),同时给定词库,对该字符串进行精确分词。说明: - 精确分词:字符串分词后,不会出现重叠。例如 "ilovechina",不同切分后可得到 "i", "love", "china"。 - 标点符号不分词,仅用于断句。 - 词库:根据常识及词库统计出来的常用词汇。例如:dictionary={"i","love","china","ilovechina","lovechina"}。 - 分词原则原创 2025-07-22 07:45:41 · 418 阅读 · 0 评论 -
中文分词模拟器 - 华为OD统一考试(Java 题解)
给定一个连续不包含空格字符的字符串,该字符串仅包含英文小写字母及英文标点符号(逗号、句号、分号),同时给定词库,对该字符串进行精确分词。说明: - 精确分词:字符串分词后,不会出现重叠。例如 "ilovechina",不同切分后可得到 "i", "love", "china"。 - 标点符号不分词,仅用于断句。 - 词库:根据常识及词库统计出来的常用词汇。例如:dictionary={"i","love","china","ilovechina","lovechina"}。 - 分词原则原创 2025-07-21 14:06:44 · 286 阅读 · 0 评论 -
查找众数及中位数 - 华为OD统一考试(JavaScript 题解)
众数是指一组数据中出现次数量多的那个数,众数可以是多个。中位数只是指把一组数据从小到大排列,最中间的那个数,如果这组数据的个数是奇数,那最中间那个就是中位数,如果这组数据的个数为偶数,那就把中间的两个数之和除以2,所得的结果就是中位数。查找整型数组中元素的众数并组成一个新的数组,求新数组的中位数原创 2025-07-23 21:57:27 · 309 阅读 · 0 评论 -
分月饼 - 华为OD统一考试(JavaScript 题解)
中秋节,公司分月饼,m个员工,买了n个月饼,m<=n,每个员工至少分1个月饼,但可以分多个,单人分到最多月饼的个数是Max1,单人分到第二多月饼个数是Max2,Max1-Max2<=3,单人分到第n-1多月饼个数是Max(n-1),单人分到第n多月饼个数是Max(n),Max(n-1)-Max(n)<=3问有多少种分月饼的方法?原创 2025-07-27 16:15:09 · 457 阅读 · 0 评论 -
字符串重新排列 - 华为OD机试真题(JavaScript 题解)
给定一个字符串s,s包括以空格分隔的若干个单词,请对s进行如下处理后输出:1. 单词内部调整:对每个单词字母重新按字典序排序2. 单词间顺序调整: 1. 统计每个单词出现的次数,并按次数降序排列 2. 次数相同,按单词长度升序排列 3. 次数和单词长度均相同,按字典升序排列请输出处理后的字符串,每个单词以一个空格分隔。原创 2025-07-17 07:45:00 · 299 阅读 · 0 评论 -
中文分词模拟器 - 华为OD统一考试(C++ 题解)
给定一个连续不包含空格字符的字符串,该字符串仅包含英文小写字母及英文标点符号(逗号、句号、分号),同时给定词库,对该字符串进行精确分词。说明: - 精确分词:字符串分词后,不会出现重叠。例如 "ilovechina",不同切分后可得到 "i", "love", "china"。 - 标点符号不分词,仅用于断句。 - 词库:根据常识及词库统计出来的常用词汇。例如:dictionary={"i","love","china","ilovechina","lovechina"}。 - 分词原则原创 2025-07-22 12:15:00 · 972 阅读 · 0 评论 -
字符串重新排列 - 华为OD机试真题(Python 题解)
给定一个字符串s,s包括以空格分隔的若干个单词,请对s进行如下处理后输出:1. 单词内部调整:对每个单词字母重新按字典序排序2. 单词间顺序调整: 1. 统计每个单词出现的次数,并按次数降序排列 2. 次数相同,按单词长度升序排列 3. 次数和单词长度均相同,按字典升序排列请输出处理后的字符串,每个单词以一个空格分隔。原创 2025-07-19 07:15:00 · 399 阅读 · 0 评论 -
字符串重新排列 - 华为OD机试真题(C++ 题解)
给定一个字符串s,s包括以空格分隔的若干个单词,请对s进行如下处理后输出:1. 单词内部调整:对每个单词字母重新按字典序排序2. 单词间顺序调整: 1. 统计每个单词出现的次数,并按次数降序排列 2. 次数相同,按单词长度升序排列 3. 次数和单词长度均相同,按字典升序排列请输出处理后的字符串,每个单词以一个空格分隔。原创 2025-07-16 11:45:00 · 482 阅读 · 0 评论 -
欢乐的周末 - 华为OD统一考试(JavaScript 题解)
小华和小为是很要好的朋友,他们约定周末一起吃饭。通过手机交流,他们在地图上选择了多个聚餐地点(由于自然地形等原因,部分聚餐地点不可达)。求小华和小为都能到达的聚餐地点有多少个?原创 2025-07-27 16:31:41 · 543 阅读 · 0 评论 -
可以组成网络的服务器 - 华为OD统一考试(JavaScript 题解)
在一个机房中,服务器的位置标识在n*m的整数矩阵网格中,1表示单元格上有服务器,0表示没有。如果两台服务器位于同一行或者同一列中紧邻的位置,则认为它们之间可以组成一个局域网,请你统计机房中最大的局域网包含的服务器个数。原创 2025-07-28 20:42:35 · 230 阅读 · 0 评论 -
多段数据压缩 - 华为OD统一考试(JavaScript 题解)
为简化处理,多段线的走向只能是水平、竖直、斜向45度。上图中的多段线可以用下面的坐标串表示:(2, 8), (3, 7), (3, 6), (3, 5), (4, 4), (5, 3), (6, 2), (7, 3), (8, 4), (7, 5)。但可以发现,这种表示不是最简的,其实只需要存储6个蓝色的关键点即可,它们是线段的起点、拐点、终点,而剩下4个点是冗余的。现在,请根据输入的包含有冗余数据的多段线坐标列表,输出其最简化的结果。原创 2025-07-24 13:11:52 · 455 阅读 · 0 评论 -
红黑图 - 华为OD机试真题(Java 题解)
众所周知红黑树是一种平衡树,它最突出的特性就是不能有两个相邻的红色节点。那我们定义一个红黑图,也就是一张无向图中,每个节点可能有红黑两种颜色,但我们必须保证没有两个相邻的红色节点。现在给出一张未染色的图,只能染红黑两色,问总共有多少种染色方案使得它成为一个红黑图。原创 2025-07-18 15:43:18 · 651 阅读 · 0 评论 -
字符串重新排列 - 华为OD机试真题(Java 题解)
给定一个字符串s,s包括以空格分隔的若干个单词,请对s进行如下处理后输出:1. 单词内部调整:对每个单词字母重新按字典序排序2. 单词间顺序调整: 1. 统计每个单词出现的次数,并按次数降序排列 2. 次数相同,按单词长度升序排列 3. 次数和单词长度均相同,按字典升序排列请输出处理后的字符串,每个单词以一个空格分隔。原创 2025-07-19 17:00:00 · 436 阅读 · 0 评论 -
红黑图 - 华为OD机试真题(C++ 题解)
众所周知红黑树是一种平衡树,它最突出的特性就是不能有两个相邻的红色节点。那我们定义一个红黑图,也就是一张无向图中,每个节点可能有红黑两种颜色,但我们必须保证没有两个相邻的红色节点。现在给出一张未染色的图,只能染红黑两色,问总共有多少种染色方案使得它成为一个红黑图。原创 2025-07-18 17:40:30 · 1079 阅读 · 0 评论 -
代表团坐车 - 华为OD统一考试(JavaScript 题解)
某组织举行会议,来了多个代表团同时到达,接待处只有一辆汽车可以同时接待多个代表团,为了提高车辆利用率,请帮接待员计算可以坐满车的接待方案输出方案数量。**约束:**1. 一个团只能上一辆车,并且代表团人数(代表团数量小于30,每个代表团人数小于30)小于汽车容量(汽车容量小于100)。2. 需要将车辆坐满。原创 2025-07-23 22:02:22 · 463 阅读 · 0 评论 -
部门人力分配 - 华为OD统一考试)(JavaScript 题解)
部门在进行需求开发时需要进行人力安排。当前部门需要完成 N 个需求,需求用 requirements[i] 表示,requirements[i] 表示第 i 个需求的工作量大小,单位:人月。这部分需求需要在 M 个月内完成开发,进行人力安排后每个月的人力是固定的。 目前要求每个月最多有 2 个需求开发,并且每个月需要完成的需求不能超过部门人力。请帮部门评估在满足需求开发进度的情况下,每个月需要的最小人力是多少。原创 2025-07-25 22:48:29 · 539 阅读 · 0 评论 -
中文分词模拟器 - 华为OD统一考试(JavaScript 题解)
给定一个连续不包含空格字符的字符串,该字符串仅包含英文小写字母及英文标点符号(逗号、句号、分号),同时给定词库,对该字符串进行精确分词。说明: - 精确分词:字符串分词后,不会出现重叠。例如 "ilovechina",不同切分后可得到 "i", "love", "china"。 - 标点符号不分词,仅用于断句。 - 词库:根据常识及词库统计出来的常用词汇。例如:dictionary={"i","love","china","ilovechina","lovechina"}。 - 分词原则原创 2025-07-21 18:30:00 · 993 阅读 · 0 评论 -
分割均衡字符串 - 华为OD统一考试(JavaScript 题解)
均衡串定义:字符串只包含两种字符,且两种字符的个数相同。给定一个均衡字符串,请给出可分割成新的均衡子串的最大个数。约定字符串中只包含大写的'X"和'Y'两种字符。原创 2025-07-24 17:30:00 · 336 阅读 · 0 评论