- 7
- 0
- 约5.43千字
- 约 7页
- 2026-04-28 发布于河北
- 举报
华为OD机考真题(2025B卷)及详细答案
第一题(100分,基础题·字符串处理)
题目描述
给定一个字符串,要求将字符串中连续相同的字符进行压缩,压缩规则为:字符+连续出现次数,若次数为1,则省略次数(例:输入aabccc,输出a2bc3);若压缩后的字符串长度不小于原字符串长度,则返回原字符串。
输入:一个非空字符串(长度1≤n≤1000)
输出:压缩后的字符串或原字符串
示例1:输入aabccc→输出a2bc3
示例2:输入abc→输出abc(压缩后abc与原长度一致,返回原串)
示例3:输入aaaaa→输出a5
详细答案
1.解题思路
核心:遍历字符串,统计连续相同字符的出现次数,遍历过程中拼接压缩结果,最后对比压缩后与原串长度,选择更短的返回。
步骤:1.处理空串(本题输入非空,可省略,但机考需考虑边界);2.初始化前驱字符、计数变量、结果列表;3.遍历字符串,对比当前字符与前驱字符,相同则计数+1,不同则拼接前驱字符和计数(计数1省略),重置前驱字符和计数;4.遍历结束后,拼接最后一组字符和计数;5.对比长度,返回最优结果。
2.可运行代码
python
defcompress_string(s):
#处理边界(输入非空,此处冗余但机考建议保留,避免测试用例异常)
ifnots:
return
您可能关注的文档
最近下载
- 2021版神经外科术中唤醒麻醉专家共识PPT课件.pptx VIP
- 年产10万吨淡色啤酒发酵车间设计.doc VIP
- 2026年上海市静安区社区工作者考试试卷带答案.docx VIP
- Petrel 人工神经网络技术的应用.pdf VIP
- 2026年广东东莞市联考中考一模道德与法治试卷(试卷+解析).docx VIP
- 斯伦贝谢petrel软件中文操作手册.pdf VIP
- 2026年广东佛山市校联考中考一模道德与法治试卷及答案.docx VIP
- 制造执行系统(MES)的功能与实践考试A卷及答案.pdf VIP
- 制造执行系统(MES) 的功能与实践期末考试卷及答案.pdf VIP
- 2024年新疆中考英语试卷+.docx VIP
原创力文档

文档评论(0)