当前位置: 首页 > news >正文

华为OD机考双机位C卷 - 字符串摘要(Java Python JS C_C++ GO )

字符串摘要

2026华为OD机试双机位C卷 - 华为OD上机考试双机位C卷

华为OD机试双机位C卷真题目录点击查看: 【全网首发】2026华为OD机位C卷 机考真题题库含考点说明以及在线OJ(OD上机考试双机位C卷)

题目描述

给定一个字符串的摘要算法,请输出给定字符串的摘要值

  1. 去除字符串中非字母的符号。
  2. 如果出现连续字符(不区分大小写) ,则输出:该字符 (小写) + 连续出现的次数。
  3. 如果是非连续的字符(不区分大小写),则输出:该字符(小写) + 该字母之后字符串中出现的该字符的次数
  4. 对按照以上方式表示后的字符串进行排序:字母和紧随的数字作为一组进行排序,数字大的在前,数字相同的,则按字母进行排序,字母小的在前。

输入描述

一行字符串,长度为[1,200]

输出描述

摘要字符串

用例1

输入

aabbcc

输出

a2b2c2

用例2

输入

bAaAcBb

输出

a3b2b2c0

说明

bAaAcBb:

第一个b非连续字母,该字母之后字符串中还出现了2次(最后的两个Bb) ,所以输出b2

a连续出现3次,输出a3,

c非连续,该字母之后字符串再没有出现过c,输出c0

Bb连续2次,输出b2

对b2a3c0b2进行排序,最终输出a3b2b2c0

解题思路

本题的核心是字符串的预处理、分段统计与排序。题目要求我们从一个包含各种字符的字符串中提取摘要,具体过程可以分为以下三个主要步骤:

1. 预处理

首先,我们需要清理输入字符串。

  • 去除非字母符号:题目只关心字母,因此需要过滤掉所有非字母字符。
  • 大小写统一:题目说明不区分大小写,为了方便处理,可以将所有字母统一转换为小写(或大写)。
  • 全局统计:我们需要统计每个字母在整个字符串中出现的总次数。这可以通过一个长度为 128 的数组(对应 ASCII 码)或哈希表来实现。这个统计数据对于后续计算“非连续字符”的摘要值至关重要。

2. 生成摘要片段

接下来,我们需要遍历处理后的纯字母字符串,识别出一段段连续的字符序列。

  • 连续字符处理:如果我们发现当前字符与前一个字符相同,说明是连续出现的,此时我们只需增加当前段的计数器 repeat
  • 非连续字符处理(或者连续段结束时):
    • 如果当前段的长度 repeat > 1:根据题目规则 2,摘要值为 字符 + 连续次数
    • 如果当前段的长度 repeat == 1:根据题目规则 3,摘要值为 字符 + 该字符之后出现的次数
      • 如何计算“之后出现的次数”?我们可以利用步骤 1 中的全局统计。每当我们遍历过一个字符,就将其对应的全局计数减 1。那么,当我们处理到一个非连续字符时,其全局计数器中剩余的值正是它在后续字符串中出现的次数。
  • 边界处理:为了方便处理最后一个字符段,可以在字符串末尾添加一个特殊字符(如空格),或者在循环结束后单独处理最后一段。

3. 排序与输出

所有的摘要片段生成后,需要按照特定规则进行排序:

  • 排序规则
    1. 数字优先:按照片段中的数字(即出现次数)从大到小排序。
    2. 字母次之:如果数字相同,则按照字母的 ASCII 码从小到大排序。
  • 最后,将排序好的片段拼接起来,即为最终的摘要字符串。

这个过程结合了字符串扫描、哈希计数和自定义排序,逻辑清晰且易于实现。

http://www.jsqmd.com/news/455804/

相关文章:

  • 通义千问1.5-1.8B-Chat-GPTQ-Int4环境配置避坑指南:解决Python依赖冲突与版本问题
  • 3步打造专业级音效:开源音频均衡器实战指南
  • Text2Image-GUI:从零基础到高效部署的AI图像生成工具指南
  • cv_unet_image-colorization高性能推理优化:减少显存占用与提升处理速度
  • 3步打造专业AI图像生成工具:NMKD Stable Diffusion GUI全攻略
  • 考研后文书没亮点?北京留学中介故事线设计排名吸引招生官 - 博客湾
  • 实时口罩检测-通用技术博文:‘large neck, small head‘设计思想在口罩检测中的价值
  • 3步打造专业音效:Equalizer APO系统级音频均衡器全方位增强指南
  • 新手福音:借鉴Cursor AI编程思想,用快马平台实现零基础代码生成与学习
  • 英国留学申请中介文书榜单:留学机构个性化定制才是硬道理 - 博客湾
  • Balena Etcher技术解构:安全高效镜像烧录的创新方法指南
  • 科哥预置环境实测:Image-to-Video一键部署,新手也能玩转AI视频生成
  • 为什么你的论文AIGC率这么高?AI检测算法原理深度解读 - 我要发一区
  • 告别环境冲突!Python3.8镜像保姆级安装与使用教程
  • 突破直播流量天花板:obs-multi-rtmp多平台同步推流解决方案
  • PCB打样哪家更省心
  • PyTorch线性层Linear实战:从矩阵运算到批量数据处理(附代码示例)
  • Z-Image-GGUF文生图模型完整教程:从零到一,打造你的AI绘画工作流
  • ffmpeg新手福音,用快马平台生成可交互代码示例轻松入门音视频处理
  • vscode ssh 远程连接macos
  • Mac微信消息保护工具:WeChatIntercept本地存储实现方案
  • GLM-Image部署教程(含CPU Offload):16GB显存设备运行可行性验证
  • CTF实战:手把手教你破解Playfair密码(附BUUCTF真题解析)
  • 大数据领域 ClickHouse 的跨数据中心部署方案
  • Nano-Banana生产环境部署:Nginx反向代理+HTTPS安全访问配置
  • Playwright实战:如何用Python接管已登录淘宝的Chrome浏览器(附完整代码)
  • 自我介绍(王建民作业)
  • 用快马ai三分钟搭建linux命令交互学习平台,可视化原型即刻体验
  • 农业AI落地难?揭秘2024年国内12个真实农场部署案例(Python图像识别工业级部署手册)
  • 手把手教你用嘎嘎降AI降低论文AIGC率:新手3分钟上手教程 - 我要发一区