2025华为OD机试备考攻略以及最新题库目录分值说明 + 考点说明(Python/JS/C/C++)

在这里插入图片描述

专栏导读

本专栏收录于《华为OD机试真题(Python/JS/C/C++)》

刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。

2025年3月16日,华为OD机试已经将华为OD机试(E卷)切换为 2025A卷。

目前正在考的是2025A卷,按照华为OD往常的操作,E卷题目是由往年真题(E卷/A卷/B卷/C卷/D卷)+全新题目组成,也就是说2025A卷还会考到E卷、A卷、B卷、C卷、D卷的题目,比例大概是1道新题、2道旧题的样子。

2025年3月16日之后,很多小伙伴收到的是E卷,那么恭喜你看到本文了,抓紧刷题吧。A卷新题库正在更新中

不管是OD机试还是已经入职,刷题都很重要!!!

  1. 只有通过机试才能进入技术面
  2. 技术一面二面也需要现场编写代码、手撕算法题
  3. 入职后,一年内必须通过可信考试,也是算法题考试,可信考试有三个级别(入门级、工作级、专业级),不同级别会对应不同薪资

在这里插入图片描述

推荐刷题方法

  1. 优先刷E卷真题(目前在考的就是2025A卷,包含1道2025A卷新题、2道E卷/A卷/B卷/C卷/D卷旧题)
  2. 按算法分类刷题,逐个击破,效率更高
  3. 刷题方式:
    • 模拟考试环境,只看题目,不看解题思路和代码实例,通过IDE解题
    • 100分题目,闭卷40分钟
    • 200分题目,闭卷60分钟
    • 解答完,再看文章解题思路和代码
  4. 刷题在于精,不在多
  5. 在于理解,切记背代码

刷题过程中,遇到算法问题,推荐使用ChatGPT解决。

大家还是得多刷题,这个小伙伴,考的三道,全是原题,图库都有

在这里插入图片描述

在这里插入图片描述

考试注意事项:

1、 在线训练和正式考试,请在本地 IDE 上进行编写,然后再粘贴复制到笔试页面,保存并调试。
2、考试时不用紧张,保持正常编码习惯即可,遇到无法提示又无把握的实现时,改用其他方式代替。
3、训练和考试的代码均需要编写输入和输出代码,编码一段代码后记得进行调试,保证代码正确性。
4、 编码工具删除行 ctrl+d依旧可以使用,ctrl+c,+v ,+z 等均可正常使用,其他快捷键建议尽量莫用,尤其是有保存习惯的同学,不要用ctrl+s,否则会打开页面保存键,算弹出当前页面一次。
5、 请安装使用最新版 chrome浏览器作答,考试需开启摄像头,请确保电脑带有摄像头,考试中途请不要查看其它网站。
6、答题前请注意查看示例(计入考试时长),代码完成后请务必点击【保存并调试】按钮(可以多次,以最高得分记分),否则答案不做保存,调试完成点击【提交本题型】按钮,最后交卷。
7、考试时间 150 分钟,满分 400 分,及格 150 分。卷面共 3 道题,2 道一星难度,一题 100 分,1 道二星难度,一题200 分,考试语言可自行选择。
8、考试时允许使用草稿纸,请提前准备纸笔。如果需要上厕所,请在考试前提前准备好,避免考试中途离开座位,出现离开监控的情况。
9、考试期间如遇到断电、断网、死机等问题,可以关闭浏览器重新打开试卷链接即可继续做题,遇到问题请及时反馈给 HR。

机试注意事项:

编码时,注意import所需要的包,代码工具无法自动提示相关类的引入,代码补全及tab空格提示已默认开启;

在这里插入图片描述
针对java的代码补全功能并不强大,很多提示无法得出,请勿过分依赖于代码补全功能,应早做准备,熟记字符串及数组等常用方法名称,例如jdk1.8的排序方法在代码提示中就无法得出,如下图:

在这里插入图片描述
当代码完成一部分时,如需调试,请点击左上角的自测,打开自测页面,如下图:

在这里插入图片描述
下图中自测页面个文本框的解释如下图:

在这里插入图片描述

150分是华为统一的通过分数线。但各部门的要求又不一样,通常非目标院校的分数要求更高些。300+是高分,260+是较为安全的分数。总之分数越高越高,对后续的定级、综面、HR审批都有益处。

一般来说对接你的HR会问你啥时候可以笔试,你觉得准备的ok了就会发你一个机考链接,这个机考链接的有效期为7天,你在这七天时间内找个时间参加考试即可!华为OD机考会影响薪资的,300分以上和300分一下的价格是不一样的,所以我建议大家好好准备争取超过300分,能拿高分就拿高分。

机试没考过的话,会有半年的冷冻期。

为什么我说华为机考并不难,原因很简单,因为这个考试是有题库的!你在进入机考页面的时候网页上会显示正在组卷中,其实就是去题库里找两个简单题一道复杂题。既然这是一场有题库的考试,那我们最重要的当然是获取最全面的题库对吧,这个大家放心我已经帮大家整理好了,未来也会持续更新!

我觉得准备机考前的第一件事是选择一门合适的编程语言,华为机考对编程语言是没有限定的,你可以选择自己最喜欢的编程语言。考虑到大部分华为OD的应聘者都是技术基础较为薄弱甚至非科班的同学,我还是满建议大家使用Java来应付机考还有后面的手撕代码的,当然如果你会JS、Python、C++的话也可以用来考试。

如果基于我提供的题库开始认认真真刷题,不开玩笑的说遇到原题是肯定的,正常情况下遇到两道原题是不难的,很多同学是直接三题全部命中!因为华为题库三个月会更新一部分新题进来,所以大家尽量不要在新题刚刚更新的时候去做,建议在新题发布一个月后再考我感觉命中两道很正常的!

下面,哪吒将华为OD机试真题归归类,让大家一目而了然。

关于订阅华为OD机试真题的后续问题

  1. 订阅专栏后,专栏内的文章都可看,以后还会继续更新新题
  2. 每道题都包含题目、解题思路、代码详解(关键行包含详细注释)、代码运行截图;

在考试的时候,最好不要用优快云专栏里的源码去答题,因为华为OD机试是有查重的,这个一定要注意!最好是改一改变量名称,加一加注释,改一改逻辑顺序,掌握答题思路才是关键,下面的题中我都加了详细的答题思路,代码中也有详细的注释说明代码运行是100%正确无误的,每一题都有样例测试,全网独一份

如果你刚刚参加完机试考试,欢迎提供真题到哪吒这里,直接红包转账收题。

很多考过的小伙伴,总结了宝贵的经验,多刷题,先易后难,前期积累自信,后期逐一突破,效果最佳。

华为OD机试算法题太多了,知识点繁杂,如何刷题更有效率呢?

我觉得可以按照“算法和数据结构”去刷,把华为OD机试涉及到的“算法和数据结构”列出来,一个算法刷10道题,那我岂不是无敌了?

首先,了解算法和数据结构有哪些知识点,在后面的刷题中有 大局观 。

下面是我花了一天时间整理的 算法和数据结构的知识结构,大家可以看看。

在这里插入图片描述

为了更高效、更有乐趣的刷题,学习,即日起开展 “华为OD七日集训”

有兴趣参加 “华为OD七日集训”的小伙伴,点击文末名片,扫描一下,回复华为OD即可。

在这里插入图片描述
在这里插入图片描述
下面是为大家 精心挑选的华为OD机试题单,并根据题目知识点的类型分好了类别,大家可以根据每个知识点,进行有针对性的刷题。

一、逻辑分析

华为OD机试 - 数字涂色(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - N进制减法(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 计算观看演唱会场次 - 逻辑分析(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 最长的完全交替连续方波信号 - 逻辑分析(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 异常的打卡记录(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 城市聚集度(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 寻找相同子串(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 尼科彻斯定理(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 公共子串计算(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 羊、狼、农夫过河 - 逻辑分析(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 完全数计算(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 机房布局(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 统计字符(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 通信误码(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 明明的随机数(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - IPv4地址转换成整数(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 单词倒序(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 快速开租建站(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - GPU 调度(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 数字涂色(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 货币单位换算(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 区间连接器(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 不爱施肥的小布(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 统计文本数量(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 最佳对手(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 寻找关键钥匙(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 等差数列(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 箱子之形摆放(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 数据分类(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 购物(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 单词加密(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 最少停车数(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 最长公共前缀(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 拔河比赛(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 最少交换次数 - 感谢@on your left反馈(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 正整数到Excel编号之间的转换(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 阿里巴巴找黄金宝箱(III)(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 座位调整 - 逻辑分析(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 组成最大数(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 5键键盘的输出(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 按单词下标区间翻转文章内容(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 最大的整数(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 生成回文素数(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 斗地主之顺子(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 优选核酸检测点(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 攀登者2(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - AI面板识别(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 报文回路(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 比赛的冠亚季军(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 最小的调整次数(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 简单的自动曝光(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 计算面积 - 逻辑分析(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 取出尽量少的球 - 感谢@吴修柯反馈(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - TLV解码(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 矩形相交的面积 - 逻辑分析(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 找终点(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 数字游戏(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 靠谱的车 - 逻辑分析(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 敏感字段加密(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 数字加减游戏(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 用户调度问题(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 构成正方形的数量(Java/Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 书籍叠放 - 逻辑分析(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 运维日志排序(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 热点网站统计 - 逻辑分析(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 简易内存池(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 模拟消息队列(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 投篮大赛(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 天然蓄水库(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 统计匹配的二元组个数(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 山脉的个数(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 人气最高的店铺(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 按身高和体重排队(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 合法IP(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 预定酒店(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 获得完美走位(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 狼羊过河(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 去除多余空格(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 输入n个整数,输出其中最小的k个(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 报文重排序(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 快递投放问题(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 跳跃游戏 II(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 优秀学员统计(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 喊7的次数重排(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 打印文件(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 组合出合法最小数(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 机器人活动区域(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 任务混部(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 相同数字的积木游戏1(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最多几个直角三角形(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 微服务的集成测试(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 整数对最小和(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最大花费金额(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 走方格的方案数(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - MVP争夺战(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 火星文计算(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 勾股数元组(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 分界线(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 获取最大软件版本号(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 单核CPU任务调度(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 整数编码(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 服务中心选址(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 知识图谱新词挖掘1(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 天然蓄水池(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 找数字(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 寻找链表的中间结点(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 不含101的数(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 静态代码扫描服务(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最优资源分配(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 统一限载货物数最小值(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 机房布局(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - AI处理器组合(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - AI控制面板(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 字母组合(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 日志采集系统(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最快到达医院的方法(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 开放日活动(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 探索地块建立(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最长的指定瑕疵度的元音子串(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 统计友好度最大值(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 找等值元素(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 无向图染色(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - RSA加密算法(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 单行道汽车通行时间(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 转骰子(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 几何平均值最大子数(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 小火车最多人时所在园区站点(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 人数最多的站点(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 约瑟夫问题(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - Excel单元格数值统计(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 九宫格游戏(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 奖牌榜排名(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 比较两个版本号的大小(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 处理器问题(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 采样过滤(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最大时间(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 幼儿园分班(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 采用合理的缓存策略,最少需要的金币数(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 区块链文件转储系统(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 芯片资源占用(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 新工号中数字的最短长度(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 双十一 最大花费金额(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 没有回文串(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 排队游戏 刺头学生(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 最长的指定瑕疵度的元音子串(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最快到达医院的方法(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 无向图染色(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 探索地块建立(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 静态扫描(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 三阶积幻方(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 箱子之字形摆放(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 密钥格式化(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 对称美学(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 匿名信(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 响应报文时间(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 小明的幸运数(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 新学校选址(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 无向图染色(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最大连续文件之和(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 模拟商场优惠打折(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 密室逃生游戏(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 分班问题(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 创建二叉树(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 日志首次上报最多积分(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最长元音子串的长度(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 单向链表中间节点(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最长的密码(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 垃圾短信识别(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 积木最远距离(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - N个选手比赛前三名、比赛(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 统计监控器(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 需要打开多少监控器(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 信号强度(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 预订酒店(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 免单统计(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 端口合并(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 跳房子I(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 根据IP查找城市(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 数的分解(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 数大雁(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 出租车计费(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 选修课(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 竖直四子棋(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 代码编辑器(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 计算误码率(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 推荐多样性(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 找出作弊的人(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 学生排名(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 开源项目热度榜单(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试真题 - 机场航班调度程序(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试真题 - 抢7游戏(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 员工派遣(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 掌握单词个数(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 灰度图恢复(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 解密犯罪时间(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 石头剪刀布游戏(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 堆内存申请(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 中文分词模拟器(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 来自异国的客人(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 问卷调查(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 多段数据压缩(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 流浪地球(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最优策略组合下的总的系统消耗资源数(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 根据员工出勤信息,判断本次是否能获得出勤奖(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 吃到最多的刚好合适的菜(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 求幸存数之和(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 会议室占用时间段(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 内存冷热标记(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 路灯照明问题(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 密码解密(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 小朋友来自多少小区(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 新员工座位安排系统(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 信息搜索(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 寻找最富裕的小家庭(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 无重复字符的元素长度乘积的最大值(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 结队编程(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 运输时间(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 攀登者1(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 芯片资源限制(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 查找舆情热词(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 机智的外卖员(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 垃圾信息拦截(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - API集群负载统计(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 密码输入检测(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 多段线数据压缩(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 手机App防沉迷系统(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 计算最多能观看几场演出(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 生成哈夫曼树(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 山峰个数(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 农场施肥(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 测试用例执行计划(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 德州扑克 - 逻辑分析(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 判断一组不等式是否满足约束并输出最大差(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 服务失效判断 - 逻辑分析(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 九宫格按键输入 - 逻辑分析(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 计算最大乘积(Python/JS/C/C++ 2022 Q4 100分)

华为OD机试 - 英文输入法 - 逻辑分析(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - We Are A Team(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 最远足迹(Python/JS/C/C++ 2022Q4 100分)

华为OD机试 - 数字反转打印(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 快递运输 - 送分题(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 事件推送(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 第一个错误的版本(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 评论转换输出(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 求最小步数(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 红黑图(Python/JS/C/C++ 2023 B卷100分)

华为OD机试 - DNA序列(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 求最大数字(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 不开心的小朋友(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 简单密码(Python/JS/C/C++ 牛客练习题 HJ21)

华为OD机试 - 最长回文子串(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 网上商城优惠活动(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 统计每个月兔子的总数(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 素数伴侣(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 找车位(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 图片整理(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 整理扑克牌(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 比赛评分(Python/JS/C/C++ 2024 B卷 200分)

二、数据结构

1、线性表

① 数组

华为OD机试 - 求符合要求的结对方式 - 数组(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 数组去重和排序(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 找出两个整数数组中同时出现的整数(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 组装新的数组(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 数组的中心位置(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 数组组成的最小数字 - 逻辑分析(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 最小循环子数组(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 数组拼接(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 数组分组(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 优雅数组(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 字符串筛选排序 - 数组(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最低位排序 - 数组(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最大化控制资源成本 - 差分数组(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 智能成绩表 - 数组(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - CPU算力分配 - 数组(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 购买水果最便宜的方案 - 数组(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 围棋的气 - 数组(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 整型数组按个位值排序 - 数组(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 数组合并(Python/JS/C/C++ 2024 D卷 100分)

② 双指针

华为OD机试 - 租车骑绿道 - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 内存资源分配 - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 寻找身高相近的小朋友 - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 小朋友排队 - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 分割数组的最大差值 - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 检查是否存在满足条件的数字组合 - 回溯、双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 求最多可以派出多少支团队 - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 阿里巴巴找黄金宝箱(I) - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - VLAN资源池 - 回溯、双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 考勤信息 - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 工号不够用了怎么办 - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 租车骑绿岛 - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 磁盘容量排序 - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 绘图机器 - 双指针(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 太阳能板最大面积 - 双指针(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 计算数组中心位置 - 双指针(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最后一个有效字符 - 双指针(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 猜字谜 - 双指针(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 字符串序列判定 - 双指针(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 在字符串中找出连续最长的数字串 - 双指针(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 输出单向链表中倒数第k个结点 - 双指针(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 非严格递增连续数字序列 - 双指针(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 字符串分割(二) - 双指针(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 有效子字符串 - 双指针(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 叠积木1 - 双指针(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 最长连续子序列 - 双指针(Python/JS/C/C++ 2023 C卷 100分)

2、map与list

华为OD机试 - 全量和已占用字符集 - 数据结构map(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 告警抑制 - 数据结构map(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 单词接龙 - 数据结构map、list(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 最大社交距离 - TreeSet(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 判断字符串子序列 - 倒序遍历(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 字符统计及重排 - 数据结构list、排序(Python/JS/C/C++ 2024 B卷 100分)

3、队列

华为OD机试 - 支持优先级的队列 - 优先队列(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 特异性双端队列 - 双端队列(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 寻找密码 - 优先队列(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 业务优先级 - 队列(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 打印机队列 - 优先队列(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 银行插队 - 队列(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 贪吃蛇 - 队列(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 剩余银饰的重量 - 优先队列(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 找磨损度最高和最低的硬盘 - 优先队列(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 打印任务排序 - 队列(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 火星文计算2 - 双端队列(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 篮球游戏 - 双端队列(Python/JS/C/C++ 2024 D卷 100分)

4、链表

华为OD机试 - 转盘寿司 - 链表(Python/JS/C/C++ 2024 E卷 100分)

5、栈

华为OD机试 - 反转每对括号间的子串 - 栈(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 阿里巴巴找黄金宝箱(IV) - 栈(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 荒岛求生 - 栈Stack(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 分奖金 - 栈(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 简单的解压缩算法 - 栈(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 括号匹配 - 栈(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 表达式括号匹配 - 栈(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 模拟目录管理功能 - 栈(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 空栈压数 - 栈(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 字符串消除 - 栈Stack(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 压缩报文还原 - 栈(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 找朋友- 单调栈(Python/JS/C/C++ 2024 B卷 100分)

6、滑动窗口

华为OD机试 - 求满足条件的最长子串的长度 - 滑动窗口(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 根据某条件聚类最少交换次数 - 滑动窗口(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 滑动窗口最大和(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 计算最接近的数 - 滑动窗口(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 阿里巴巴找黄金宝箱(V) - 滑动窗口(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 寻找连续区间 - 滑动窗口(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 区域发电量统计 - 滑动窗口(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 贪吃的猴子 - 滑动窗口(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 荒地建设电站 - 滑动窗口(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 贪吃的猴子 - 滑动窗口(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 增强的strstr - 滑动窗口(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 字符成环找偶数O - 滑动窗口(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最大可购买的宝石数量 - 滑动窗口(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 最佳升级时间窗 - 滑动窗口(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 最多购买宝石数目 - 滑动窗口(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 数组连续和 - 滑动窗口(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 关联子串 - 滑动窗口(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 补种未成活胡杨 - 滑动窗口(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 最左侧冗余覆盖子串 - 滑动窗口(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 找出通过车辆最多颜色 - 滑动窗口(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 观看文艺汇演问题 - 滑动窗口(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 高矮个子排队 - 滑动窗口(Python/JS/C/C++ 2024 B卷 100分)

7、二叉树

华为OD机试 - 最少数量线段覆盖 - 二叉树(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 数组二叉树(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 二叉树遍历 - 中序遍历(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 完全二叉树非叶子部分后序遍历(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 计算三叉搜索树的高度 - 二叉树(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 按照路径替换二叉树(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 二叉树的广度优先遍历 - 二叉树(Python/JS/C/C++ 2024 D卷 200分)

8、矩阵

华为OD机试 - 最小传输时延Ⅱ - 矩阵、最短路径问题 (Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 学生方阵 - 矩阵(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 矩阵最大值(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 蛇形矩阵(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 矩阵稀疏扫描 - 矩阵(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 信号发射和接收 - 矩阵(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 最大相连男生数 - 矩阵(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 分配土地 - 矩阵(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 螺旋数字矩阵 - 矩阵(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 灰度图存储 - 矩阵(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 反射计数 - 矩阵(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 计算疫情扩散时间 - 矩阵(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 寻找最大价值的矿堆 - 矩阵,通过栈优化(Python/JS/C/C++ 2023 B卷 200分)

华为OD机试 - 矩阵元素的边界值(Python/JS/C/C++ 2023 B卷 100分)

9、并查集

华为OD机试 - 服务器广播 - 并查集(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 最优高铁城市修建方案 - 并查集、Kruskal算法(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 工单调度策略 - 并查集(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 需要广播的服务器数量 - 并查集(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 字符串化繁为简 - 并查集(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 发广播 - 并查集(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 快递业务站 - 并查集(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 开心消消乐 - 并查集(Python/JS/C/C++ 2024 B卷 100分)

10、双向链表

华为OD机试 - 文件缓存系统 - 双向链表(Python/JS/C/C++ 2024 D卷 200分)

三、算法

1、基础算法

① 贪心算法

华为OD机试 - 找最小数 - 贪心算法(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 最小资金赢得最多选票 - 贪心算法(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 虚拟游戏理财 - 贪心算法(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 最优的投资方式 - 贪心算法(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 阿里巴巴找黄金宝箱(II) - 贪心思维(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 最大股票收益 - 线性扫描(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 正则表达式替换 - 线性扫描(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 贪心的商人(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 数字序列比大小 - 贪心思维(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 平均像素值 - 贪心算法(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 小朋友分组最少调整次数 - 贪心算法(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 猜数字 - 暴力枚举(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 优雅子数组 - 暴力枚举(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 任务总执行时长 - 枚举(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 删除重复数字后的最大数字 - 贪心算法(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 区间交叠问题 - 贪心算法(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最长回文字符串 - 贪心算法(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 区间交叠问题 - 贪心算法(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 五子棋迷 - 贪心算法(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 恢复数字序列 - 贪心算法(Java 2024 E卷 100分)

华为OD机试 - 田忌赛马 - 贪心思维(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试真题 - 最优结果的a数组数量 - 贪心思维(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 信道分配 - 贪心算法(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 停车场车辆统计 - 贪心算法(Java/Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 万能字符单词拼写 - 贪心算法(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 任务处理/可以处理的最大任务数 - 贪心算法(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 分割均衡字符串 - 贪心算法(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 学生重新排队 - 贪心算法(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 查找充电设备组合 - 子集和问题(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 5G网络建设 - Kruskal 算法(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 体育场找座位 - 贪心算法(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 执行任务赚积分 - 贪心算法(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 最大坐标值 - 线性扫描(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 导师请吃火锅 - 贪心策略(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 计算礼品发放的最小分组数目 - 贪心思维(Python/JS/C/C++ 2024 B卷 100分)

② Dijkstra算法

华为OD机试 - 寻找最优的路测线路 - Dijkstra算法(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 路口最短时间问题 - Dijkstra算法(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 电脑病毒感染 - Dijkstra算法(Python/JS/C/C++ 2024 D卷 200分)

③ 二分查找

华为OD机试 - 数据最节约的备份方法 - 二分查找(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 批量处理任务 - 二分查找(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 最少交付时间 - 二分查找、回溯(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 猴子吃桃 - 二分查找(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 最短木板长度 - 二分查找(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 食堂供餐 - 二分查找(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 组装最大可靠性设备 - 二分查找(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 日志限流 - 二分查找(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 字符串子序列II - 二分查找(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 士兵过河 - 二分查找(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 种树 - 二分查找(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 连接器问题 - 二分查找(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 机器人仓库搬砖 - 二分查找(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 部门人力分配 - 二分查找(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 机器人搬砖 - 二分查找(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 项目排期 - 二分查找、回溯(Python/JS/C/C++ 2024 D卷 200分)

④ 分治递归

华为OD机试 - 找到比自己强的人数 - 递归(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 基站维修工程师 - 递归(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 求分数计算结果 - 递归(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 分糖果 - 分治递归(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 放苹果 - 递归(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 篮球比赛 - 递归(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 数据单元的变量替换 - 分治、递归(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试真题 - 分披萨 - 递归(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 考古学家 - 递归(Python/JS/C/C++ 2024 D卷 200分)

⑤ 回溯

华为OD机试 - 符合要求的元组的个数 - 回溯(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 王者荣耀 - 回溯(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - K数之和 - 回溯(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - BOSS的收入 - 回溯(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 游戏分组 - 回溯(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 查找接口成功率最优时间段 - 回溯(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 矩阵中找到给定的单词 - 回溯(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最大平分数组 - 回溯(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 星际篮球争霸赛 - 回溯(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 分月饼 - 回溯(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 掌握的单词个数 - 回溯(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 字符串拼接 - 回溯(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 乘坐保密电梯 - 回溯(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 考古问题 - 回溯、全排列问题(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 单词搜索,找到它 - 回溯(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 新员工考试 - 回溯(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 跳房子II - 回溯(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 硬件产品销售方案 - 回溯(Python/JS/C/C++ 2023 B卷 200分)

⑥ 全排列递归

华为OD机试 - 第k个排列 - 全排列递归(Python/JS/C/C++ 2023 B卷 100分)

⑦ 排序算法
⑧、暴力搜索

华为OD机试 - 高效货运 - 暴力搜索(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 模拟商场优惠打折II - 穷举(Python/JS/C/C++ 2024 E卷 100分)

2、字符串

① 字符串处理

华为OD机试 - 字符串分隔(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 连续字母长度(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 字符串摘要(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 输出指定字母在字符串的中的索引(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 字符串通配符(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 字符统计(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 递增字符串(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 获取字符串中连续出现次数第k多的字母的次数(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 最多提取子串数目(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 最长子字符串的长度(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 对称字符串(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 寻找符合要求的最长子串(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 构成指定长度字符串的个数(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 字符串划分(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 字符串统计(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 一种字符串压缩表示的解压(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 找出符合要求的字符串子串(Python/JS/C/C++ 2022 Q4 100分)

华为OD机试 - 求字符串中所有整数的最小和 - 逻辑分析(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 挑选字符串(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 删除字符串中出现次数最少的字符(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 字符串重新排序(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 字符串变换最小字符串(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 按索引范围翻转文章片段 - 字符串(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 字符串分割转换(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 提取字符串中的最长数学表达式(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 字符串编码校验(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 最长子字符串的长度(二) (Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 字符串排序(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 字符串加解密(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 拼接URL(Python/JS/C/C++ 2024 D卷 100分)

② 正则表达式

华为OD机试 - 解压报文 - 正则表达式(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 洞穴探险 - 正则表达式(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 字符匹配 - 正则表达式(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 相对开音节 - 正则表达式(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 提取字符串中最长数学表达式 - 正则表达式(Python/JS/C/C++ 2024 D卷 100分)

3、深度优先搜索

① 深度优先搜索

华为OD机试 - 猜密码 - 深度优先搜索dfs算法(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - Linux发行版的数量 - 深度优先搜索DFS(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 中庸行者 - 深度优先搜索DFS(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 传递悄悄话 - 深度优先搜索dfs(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 找出经过特定点的路径长度 - 深度优先搜索(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 跳格子游戏 - 深度优先搜索dfs算法(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 过滤组合字符串 - 深度优先搜索dfs算法(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 战场索敌 - 深度优先搜索dfs算法(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 文件目录大小 -深度优先搜索(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 找单词 - 深度优先搜索DFS(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 全排列 - 深度优先搜索DFS(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 数字排列 - 深度优先搜索dfs算法(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 图像物体的边界 - 深度优先搜索(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 可以组成网络的服务器 - 深度优先搜索(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试真题 - 精准核酸检测 - 深度优先搜索DFS(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试真题 - 矩阵匹配 - 深度优先搜索DFS(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试真题 - 找城市 - 深度优先搜索DFS(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 特殊的加密算法 - 深度优先搜索DFS(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 小华最多能得到多少克黄金 - 深度优先搜索DFS(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 地图寻宝 - 深度优先搜索DFS(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 商品推荐 - 深度优先搜索DFS(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 最少面试官数 - 深度优先搜索dfs(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 区间交集 - 深度优先搜索dfs算法(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 目录删除 - 深度优先搜索dfs算法(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 连续出牌数量 - 深度优先搜索dfs算法(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 任务最优调度 - 深度优先搜索dfs算法(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 查找树中元素 - 深度优先搜索DFS(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 查找单入口空闲区域 - 深度优先搜索(Python/JS/C/C++ 2024 B卷 100分)

① 广度优先搜索

华为OD机试 - 数值同化 - 广度优先搜索BFS(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 宜居星球改造计划 - 图的多源BFS(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 污染水域 - 图的多源BFS(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 最长广播响应 - 广度优先搜索(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 西天取经 - 广度优先搜索BFS(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 可活动的最大网格点数目 - 广度优先搜索BFS(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 返回矩阵中非1的元素个数 - 广度优先搜索BFS(Java 2024 E卷 200分)

华为OD机试 - 跳马 - 广度优先搜索BFS(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 周末爬山 - 广度优先搜索BFS(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 智能驾驶 - 广度优先搜索BFS(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 最长广播效应 - 广度优先搜索BFS(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 疫情扩散时间计算 - 广度优先搜索(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 悄悄话 - 广度优先搜索(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 亲子游戏 - 广度优先搜索BFS(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 最小步骤数 - 广度优先搜索BFS(Python/JS/C/C++ 2023 B卷 100分)

② 矩阵、最短路径问题
③ 拓扑排序

华为OD机试 - 查找一个有向网络的头节点和尾节点 - 拓扑排序(Python/JS/C/C++ 2024 D卷 200分)

4、动态规划

① 基础dp

华为OD机试 - 最多获得的短信条数 - 动态规划(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 代表团坐车 - 动态规划(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 猴子爬山 - 动态规划(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - MELON的难题 - 动态规划(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 通过软盘拷贝文件 - 动态规划(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 最长的顺子 - 动态规划(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 查找重复代码 - 动态规划(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 工作安排 - 动态规划(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 跳格子2 - 动态规划(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 取零食 - 动态规划(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 编码能力提升计划 - 动态规划(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 基站维护工程师数 - 动态规划(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 获取最多食物 - 拓扑排序、动态规划(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 超级玛丽通过吊桥的走法 - 动态规划(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 伐木工 - 动态规划(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 水仙花数Ⅱ - 动态规划(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 最大矩阵和 - 卡德恩算法(动态规划)(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 英雄联盟 - 动态规划(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - Wonderland游乐园 - 动态规划(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 表演赛游戏分组 - 动态规划(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 连续天数的最高利润额 - 动态规划(Python/JS/C/C++ 2024 C卷 100分)

华为OD机试 - 快递员的烦恼 - 动态规划(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 跳格子3 - 动态规划(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 园区参观路径 - 动态规划(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 贪心歌手 - 动态规划(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 平面灯阵中寻找最大正方形边界 - 动态规划(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 两个字符串间的最短路径问题 - 动态规划(Python/JS/C/C++ 2024 D卷 200分)

华为OD机试 - 数列描述 - 动态规划(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 核酸检测人员安排 - 动态规划(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 光伏场地建设规划 - 动态规划(Python/JS/C/C++ 2024 B卷 100分)

② 背包dp

华为OD机试 - 最大报酬 - 0/1 背包问题,动态规划(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 核酸最快检测效率 - 动态规划、背包问题(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 云短信平台优惠活动 - 动态规划、背包问题(Python/JS/C/C++ 2024 C卷 200分)

5、数学

华为OD机试 - 报数游戏 - 约瑟夫环(Python/JS/C/C++ 2025 A卷 200分)

华为OD机试 - 经典屏保 - 数学问题(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 分苹果 - 二进制(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 素数之积 - 数学问题(Python/JS/C/C++ 2025 A卷 100分)

华为OD机试 - 学校的位置 - 中位数(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 求最大连续bit数 - 二进制(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 四则运算(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 学校的位置 - 数学问题(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 分解连续正整数组合 - 数学推导(Python/JS/C/C++ 2024 E卷 100分)

华为OD机试 - 报文响应时间 - 贪心算法、位运算(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 - 小扇和小船的数字游戏 - 二进制(Python/JS/C/C++ 2024 C卷 200分)

华为OD机试 - 分解正整数 - 数学推导(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 - 分积木 - 二进制运算(Python/JS/C/C++ 2024 B卷 200分)

华为OD机试 - 自守数 - 数学问题(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 进制转换 - 二进制(Python/JS/C/C++ 2024 B卷 100分)

华为OD机试 - 出错的或电路 - 二进制(Python/JS/C/C++ 2023 B卷 100分)

华为OD机试 - 查找众数及中位数(Python/JS/C/C++ 2024 B卷 100分)

四、牛客练习题

华为OD机试 - 字符串最后一个单词的长度(Python/JS/C/C++ 牛客练习题 HJ1)

华为OD机试 - 24点游戏算法(Python/JS/C/C++ 牛客练习题)

华为OD机试 - 寻找峰值(Python/JS/C/C++ 牛客练习题)

1.static有什么用途?(请至少说明两种) 1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。 2) 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。 3) 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用 2.引用与指针有什么区别? 1) 引用必须被初始化,指针不必。 2) 引用初始化以后不能被改变,指针可以改变所指的对象。 3) 不存在指向空值的引用,但是存在指向空值的指针。 3.描述实时系统的基本特性 在特定时间内完成特定的任务,实时性与可靠性。 4.全局变量和局部变量在内存中是否有区别?如果有,是什么区别? 全局变量储存在静态数据库,局部变量在堆栈。 5.什么是平衡二叉树? 左右子树都是平衡二叉树 且左右子树的深度差值的绝对值不大于1。 6.堆栈溢出一般是由什么原因导致的? 没有回收垃圾资源。 7.什么函数不能声明为虚函数? constructor函数不能声明为虚函数。 8.冒泡排序算法的时间复杂度是什么? 时间复杂度是O(n^2)。 9.写出float x 与“零值”比较的if语句。 if(x>0.000001&&x<-0.000001) 10.Internet采用哪种网络协议?该协议的主要层次结构? Tcp/Ip协议 主要层次结构为: 应用层/传输层/网络层/数据链路层/物理层。 11.Internet物理地址和IP地址转换采用什么协议? ARP (Address Resolution Protocol)(地址解析協議) 12.IP地址的编码分为哪俩部分? IP地址由两部分组成,网络号和主号。不过是要和“子网掩码”按位与上之后才能区分哪些是网络位哪些是主位。 13.用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序。 循环链表,用取余操作做 14.不能做switch()的参数类型是: switch的参数不能为实型。 1.写出判断ABCD四个表达式的是否正确, 若正确, 写出经过表达式中 a的值(3分) int a = 4; (A)a += (a++); (B) a += (++a) ;(C) (a++) += a;(D) (++a) += (a++); a = ? 答:C错误,左侧不是一个有效变量,不能赋值,可改为(++a) += a; 改后答案依次为9,10,10,11 2.某32位系统下, C++程序,请计算sizeof 的值(5分). char str[] = “http://www.ibegroup.com/” char *p = str ; int n = 10; 请计算 sizeof (str ) = ?(1) sizeof ( p ) = ?(2) sizeof ( n ) = ?(3) void Foo ( char str[100]){ 请计算 sizeof( str ) = ?(4) } void *p = malloc( 100 ); 请计算 sizeof ( p ) = ?(5) 答:(1)17 (2)4 (3) 4 (4)4 (5)4 3. 回答下面的问题. (4分) (1).头文件中的 ifndef/define/endif 干什么用?预处理 答:防止头文件被重复引用 (2). #i nclude 和 #i nclude “filename.h” 有什么区别? 答:前者用来包含开发环境提供的库头文件,后者用来包含自己编写的头文件。 (3).在C++ 程序中调用被 C 编译器编译后的函数,为什么要加 extern “C”声明? 答:函数和变量被C++编译后在符号库中的名字与C语言的不同,被extern "C"修饰的变 量和函数是按照C语言方式编译和连接的。由于编译后的名字不同,C++程序不能直接调 用C 函数。C++提供了一个C 连接交换指定符号extern“C”来解决这个问题。 (4). switch()中不允许的数据类型是? 答:实型 4. 回答下面的问题(6分) (1).Void GetMemory(char **p, int num){ *p = (char *)malloc(num); } void Test(void){ char *str = NULL; GetMemory(&str, 100); strcpy(str, "hello"); printf(str); } 请问运行Test 函数会有什么样的结果? 答:输出“hello” (2). void Test(void){ char *str = (char *) malloc(100); strcpy(str, “hello”); free(str); if(str != NULL){ strcpy(str, “world”); printf(str); } } 请问运行Test 函数会有什么样的结果? 答:输出“world” (3). char *GetMemory(void){ char p[] = "hello world"; return p; } void Test(void){ char *str = NULL; str = GetMemory(); printf(str); } 请问运行Test 函数会有什么样的结果? 答:无效的指针,输出不确定 5. 编写strcat函数(6分) 已知strcat函数的原型是char *strcat (char *strDest, const char *strSrc); 其中strDest 是目的字符串,strSrc 是源字符串。 (1)不调用C++/C 的字符串库函数,请编写函数 strcat 答: VC源码: char * __cdecl strcat (char * dst, const char * src) { char * cp = dst; while( *cp ) cp++; /* find end of dst */ while( *cp++ = *src++ ) ; /* Copy src to end of dst */ return( dst ); /* return dst */ } (2)strcat能把strSrc 的内容连接到strDest,为什么还要char * 类型的返回值? 答:方便赋值给其他变量 6.MFC中CString是类型安全类么? 答:不是,其它数据类型转换到CString可以使用CString的成员函数Format来转换 7.C++中为什么用模板类。 答:(1)可用来创建动态增长和减小的数据结构 (2)它是类型无关的,因此具有很高的可复用性。 (3)它在编译时而不是运行时检查数据类型,保证了类型安全 (4)它是平台无关的,可移植性 (5)可用于基本数据类型 8.CSingleLock是干什么的。 答:同步多个线程对一个数据类的同时访问 9.NEWTEXTMETRIC 是什么。 答:物理字体结构,用来设置字体的高宽大小 10.程序什么时候应该使用线程,什么时候单线程效率高。 答:1.耗时的操作使用线程,提高应用程序响应 2.并行操作时使用线程,如C/S架构的服务器端并发线程响应用户的请求。 3.多CPU系统中,使用线程提高CPU利用率 4.改善程序结构。一个既长又复杂的进程可以考虑分为多个线程,成为几个独立或半独 立的运行部分,这样的程序会利于理解和修改。 其他情况都使用单线程。 11.Windows是内核级线程么。 答:见下一题 12.Linux有内核级线程么。 答:线程通常被定义为一个进程中代码的不同执行路线。从实现方式上划分,线程有两 种类型:“用户级线程”和“内核级线程”。 用户线程指不需要内核支持而在用户程序 中实现的线程,其不依赖于操作系统核心,应用进程利用线程库提供创建、同步、调度 和管理线程的函数来控制用户线程。这种线程甚至在象 DOS 这样的操作系统中也可实现 ,但线程的调度需要用户程序完成,这有些类似 Windows 3.x 的协作式多任务。另外一 种则需要内核的参与,由内核完成线程的调度。其依赖于操作系统核心,由内核的内部 需求进行创建和撤销,这两种模型各有其好处和缺点。用户线程不需要额外的内核开支 ,并且用户态线程的实现方式可以被定制或修改以适应特殊应用的要求,但是当一个线 程因 I/O 而处于等待状态时,整个进程就会被调度程序切换为等待状态,其他线程得不 到运行的会;而内核线程则没有各个限制,有利于发挥多处理器的并发优势,但却占 用了更多的系统开支。 Windows NT和OS/2支持内核线程。Linux 支持内核级的多线程 13.C++中什么数据分配在栈或堆中,New分配数据是在近堆还是远堆中? 答:栈: 存放局部变量,函数调用参数,函数返回值,函数返回地址。由系统管理 堆: 程序运行时动态申请,new 和 malloc申请的内存就在堆上 14.使用线程是如何防止出现大的波峰。 答:意思是如何防止同时产生大量的线程,方法是使用线程池,线程池具有可以同时提 高调度效率和限制资源使用的好处,线程池中的线程达到最大数时,其他线程就会排队 等候。 15函数模板与类模板有什么区别? 答:函数模板的实例化是由编译程序在处理函数调用时自动完成的,而类模板的实例化 必须由程序员在程序中显式地指定。 16一般数据库若出现日志满了,会出现什么情况,是否还能使用? 答:只能执行查询等读操作,不能执行更改,备份等写操作,原因是任何写操作都要记 录日志。也就是说基本上处于不能使用的状态。 17 SQL Server是否支持行级锁,有什么好处? 答:支持,设立封锁制主要是为了对并发操作进行控制,对干扰进行封锁,保证数据 的一致性和准确性,行级封锁确保在用户取得被更新的行到该行进行更新这段时间内不 被其它用户所修改。因而行级锁即可保证数据的一致性又能提高数据操作的迸发性。 18如果数据库满了会出现什么情况,是否还能使用? 答:见16 19 关于内存对齐的问题以及sizof()的输出 答:编译器自动对齐的原因:为了提高程序的性能,数据结构(尤其是栈)应该尽可能 地在自然边界上对齐。原因在于,为了访问未对齐的内存,处理器需要作两次内存访问 ;然而,对齐的内存访问仅需要一次访问。 20 int i=10, j=10, k=3; k*=i+j; k最后的值是? 答:60,此题考察优先级,实际写成: k*=(i+j);,赋值运算符优先级最低 21.对数据库的一张表进行操作,同时要对另一张表进行操作,如何实现? 答:将操作多个表的操作放入到事务中进行处理 22.TCP/IP 建立连接的过程?(3-way shake) 答:在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。   第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状 态,等待服务器确认; 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个 SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;   第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1) ,此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。 23.ICMP是什么协议,处于哪一层? 答:Internet控制报文协议,处于网络层(IP层) 24.触发器怎么工作的? 答:触发器主要是通过事件进行触发而被执行的,当对某一表进行诸如UPDATE、 INSERT 、 DELETE 这些操作时,数据库就会自动执行触发器所定义的SQL 语句,从而确保对数 据的处理必须符合由这些SQL 语句所定义的规则。 25.winsock建立连接的主要实现步骤? 答:服务器端:socker()建立套接字,绑定(bind)并监听(listen),用accept() 等待客户端连接。 客户端:socker()建立套接字,连接(connect)服务器,连接上后使用send()和recv( ),在套接字上写读数据,直至数据交换完毕,closesocket()关闭套接字。 服务器端:accept()发现有客户端连接,建立一个新的套接字,自身重新开始等待连 接。该新产生的套接字使用send()和recv()写读数据,直至数据交换完毕,closesock et()关闭套接字。 26.动态连接库的两种方式? 答:调用一个DLL中的函数有两种方法: 1.载入时动态链接(load-time dynamic linking),模块非常明确调用某个导出函数 ,使得他们就像本地函数一样。这需要链接时链接那些函数所在DLL的导入库,导入库向 系统提供了载入DLL时所需的信息及DLL函数定位。 2.运行时动态链接(run-time dynamic linking),运行时可以通过LoadLibrary或Loa dLibraryEx函数载入DLL。DLL载入后,模块可以通过调用GetProcAddress获取DLL函数的 出口地址,然后就可以通过返回的函数指针调用DLL函数了。如此即可避免导入库文件了 。 27.IP组播有那些好处? 答:Internet上产生的许多新的应用,特别是高带宽的多媒体应用,带来了带宽的急剧 消耗和网络拥挤问题。组播是一种允许一个或多个发送者(组播源)发送单一的数据包 到多个接收者(一次的,同时的)的网络技术。组播可以大大的节省网络带宽,因为无 论有多少个目标地址,在整个网络的任何一条链路上只传送单一的数据包。所以说组播 技术的核心就是针对如何节约网络资源的前提下保证服务质量。
1. 虚函数是可以[New一个对象的时候要根据虚函数的函数体来填虚表;而内联函数没有函数体,只是在预编译阶段展开]内联的,这样就可以减少函数调用的开销,提高效率(错误) 2. 一个类里可以同时存在[同一个类里无论什么函数都不能函数名和参数完全一样]参数和函数名都相同的虚函数与静态函数(错误) 3. 父类的析构函数是非虚的,但是子类的析构函数是虚的,delete子类指针(指向该子类对象)[特殊情况,参见题5],会调用父类的析构函数(正确)//任何情况下删除子类都会调用到父类的析构函数 4.对于下面的类CA,sizeof(CA) = _B_: A. 4 B. 8 C. 12 D. 16 class CA { public: CA(); virtual ~CA(); //因为有虚函数,所以会有4个字节的虚表指针 private: int m_iTime; //成员变量4个字节 public: int GetTime(); int SetTime(int iTime); }; 5.下面这段程序,打印结果是_A_: A. 1 B. 2 C. 3 D. 以上都不对 int g_iCount = 0; class CParent { public: CParent() {} ~CParent() {g_iCount += 1;} }; class CSon : public CParent { public: CSon() {} ~CSon() {g_iCount += 2;} }; main() { CParent* p = new CSon(); delete p[由于p被声明成父类指针,并且父类和子类的析构函数都非虚,因此delete操作只能根据p指针声明的类型来调用父类的析构函数]; std::cout << g_iCount << std::endl; } 6.请问下面这段程序的输出结果是_A_: A. 2,1, B. 2,2, C. 1,1, D. 1,2, class CParent { public: CParent() {} virtual ~CParent() {} public: virtual void Print() { std::cout << "1,"; }; }; class CSon : public CParent { public: CSon() {}; virtual ~CSon() {}; public: void Print() { std::cout << "2,"; }; }; void Test1(CParent& oParent[这里是引用了一个外部对象,该对象的虚表不会发生变化]) {oParent.Print();} void Test2(CParent oParent[这里会在栈空间内重新构造一个CParent类的对象,如果传入实参的类型与CParent不同则虚表会发生变化]) {oParent.Print();} main() { CSon * p = new CSon(); Test1(*p); //这里只是一个引用 Test2(*p); //这里会在栈空间重新构造Cparent类对象 delete p; } 7.请问下面这段程序的输出结果是_D_: A. 2,1, B. 2,2, C. 1,1, D. 1,2, class CParent { public: CParent() {} virtual ~CParent() {} public: void Print(){ std::cout << "1," ; }; }; class CSon : public CParent { public: CSon() {} virtual ~CSon() {} public: void Print(){ std::cout << "2,"; }; }; main() { CSon oSon; CParent * pParent = &oSon; CSon * pSon = &oSon; pParent->Print(); pSon->Print();[由于父类和子类的Print函数都非虚,所以根据指针类型决定调用关系] } 8.请问下面这段程序的输出结果是_C_: A. 2,1, B. 2,2, C. 1,2, D. 1,1, class CParent { public: CParent() {Print();} virtual ~CParent() {} public: virtual void Print(){ std::cout << "1,"; } }; class CSon : public CParent { public: CSon() {Print();} virtual ~CSon() {} public: void Print(){ std::cout << "2,"; } }; main() { CParent * pParent = new CSon()[类的构造过程遵循压栈原则,构造过程中虚表尚未建立成功,是静态调用虚函数]; delete pParent; } 9.请问下面这段程序的输出结果是_D_: A. 2,2, B. 2, C. 输出结果不确定 D. 以上都不对 class CParent { public: CParent() {Print();[构造子类对象时调用到父类的构造函数,但父类的Print函数是纯虚的,没有实现,所以这里的调用不成功,编译会出错]} virtual ~CParent() {} public: virtual void Print() = 0; }; class CSon : public CParent { public: CSon() {Print();} virtual ~CSon() {} public: void Print() { std::cout << "2,"; }; }; main() { CParent * pParent = new CSon(); delete pParent; } 10.请仔细阅读以下程序: class Base { public: virtual bool operator == (int iValue) { std::cout << "I am Base class !" << std::endl; return true; } virtual ~Base(){} }; class Derive: public Base { public: virtual bool operator == (int iValue) { std::cout << "I am Derive class !" << std::endl; return true; } virtual ~Derive(){} }; int main() { Derive derive; Base* pBase = &derive; Derive* pDerive = &derive; *pBase == 0; *pDerive == 0;[重载操作符声明为virtual使操作符产生多态性] return 0; } 程序的输出结果是_B_: A、I am Base class ! I am base class ! B、I am Derive class ! I am Derive class ! C、I am base class ! I am Derive class ! D、I am Derive class ! I am Base class !
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哪 吒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值