
【华为OD算法刷题全面攻略】
文章平均质量分 81
欢迎来到《华为OD算法刷题全面攻略》专栏!在这里,我们将为您提供系统化的算法刷题资源,帮助您深入理解华为的在线开发(OD)算法面试题。我们的目标是通过高效的学习和实践,助力您在华为的技术面试中脱颖而出。
嵌入式职场
在Matlab、Python、C/C++和Go等多种编程语言方面都有丰富的经验,专注于智能优化算法、工业人机交互界面设计、物联网、服务端开发等众多领域。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【华为 OD】 字符串拼接(Pyhon/Java/JS/C/C++)
字符数量 ( M ) 满足 ( 0 < M \leq 30 )),从中选取字符(每个字符只能使用一次)拼接成长度为 ( N )(满足 ( 0 < N \leq 5 ))的字符串。要求拼接的字符串中,相同的字符不能相邻。计算给定的字符列表能拼接出多少种满足条件的字符串。我们需要从给定的字符列表中选取字符,生成长度为 ( N ) 的字符串,且相邻字符不能相同。所有实现均通过回溯算法生成满足条件的字符串,时间复杂度为 ( O(M^N) ),适用于题目中的最大数据规模。给定一个字符列表(字符范围为。原创 2025-03-06 17:30:40 · 109 阅读 · 0 评论 -
【华为 OD】 发广播(Pyhon/Java/JS/C/C++)
广播的传播规则是:如果一个站点收到广播,它会将广播发送给所有与之连接的站点。现在需要发送一条广播,问最少需要初始发送给多少个广播站,才能确保所有广播站都收到消息。可以将广播站视为图中的节点,连接关系视为边。问题转化为:在图中找到最少的节点集合,使得这些节点能够覆盖整个图的所有连通分量。某地有 ( N ) 个广播站,站点之间通过连接互相发送广播。给定一个 ( N \times N ) 的二维矩阵。所有实现均通过DFS找到连通分量,时间复杂度为 ( O(N^2) ),适用于题目中的最大数据规模。原创 2025-03-06 15:46:21 · 83 阅读 · 0 评论 -
【华为 OD】工单调度策略(Pyhon/Java/JS)
华为工单调度系统需要调度外线工程师(FME)处理工单。每个工单有一个SLA时间(完成修复的最长时间)和一个积分值。如果在SLA时间内完成工单,则获得对应的积分;否则不获得积分,但必须完成该工单。目标是设计一种调度策略,使得外线工程师在完成所有工单的情况下,获得的总积分最大。所有实现均通过贪心算法确保获得最大积分,时间复杂度为 ( O(N \log N) ),适用于题目中的最大数据规模。我们需要在有限的时间内(SLA时间)选择积分最大的工单进行处理。原创 2025-03-06 15:38:26 · 74 阅读 · 0 评论 -
【华为 OD】最优资源分配(JS)
芯片容量:每块芯片的容量为M × 1.25G,资源编号为1, 2, …, M。配置类型A:占用1.25G(1 个资源)。B:占用2.5G(2 个资源)。C:占用10G(8 个资源)。分配规则按芯片编号从小到大分配资源。如果某个配置超过芯片剩余容量,则丢弃该配置。输出:输出每块芯片的资源占用情况,占用标记为1,未占用标记为0。原创 2025-03-06 15:32:22 · 59 阅读 · 0 评论 -
【华为 OD】最优资源分配(Java)
芯片容量:每块芯片的容量为M × 1.25G,资源编号为1, 2, …, M。配置类型A:占用1.25G(1 个资源)。B:占用2.5G(2 个资源)。C:占用10G(8 个资源)。分配规则按芯片编号从小到大分配资源。如果某个配置超过芯片剩余容量,则丢弃该配置。输出:输出每块芯片的资源占用情况,占用标记为1,未占用标记为0。原创 2025-03-06 15:26:57 · 50 阅读 · 0 评论 -
【华为 OD】最优资源分配(python)
芯片容量:每块芯片的容量为M × 1.25G,资源编号为1, 2, …, M。配置类型A:占用1.25G(1 个资源)。B:占用2.5G(2 个资源)。C:占用10G(8 个资源)。分配规则按芯片编号从小到大分配资源。如果某个配置超过芯片剩余容量,则丢弃该配置。输出:输出每块芯片的资源占用情况,占用标记为1,未占用标记为0。原创 2025-03-06 15:17:45 · 56 阅读 · 0 评论