基本字符串压缩

基本字符串压缩题目 利用字符重复出现的次数 编写一个方法 实现基本的字符串压缩功能 比如 字符串 aabcccccaaa 经压缩会变成 a2b1c5a3 若压缩后的字符串没有变短 则返回原先的字符串 给定一个 stringiniStr 为待压缩的串 长度小于等于 3000 保证串内字符均由大小写英文字母组成 返回一个 string 为所求的压缩后或未变化的串 思路 咋一分析 题目还是很简单的

题目:利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能。比如,字符串“aabcccccaaa”经压缩会变成“a2b1c5a3”。若压缩后的字符串没有变短,则返回原先的字符串。

给定一个string iniString为待压缩的串(长度小于等于3000),保证串内字符均由大小写英文字母组成,返回一个string,为所求的压缩后或未变化的串。


思路:咋一分析,题目还是很简单的,设置一个游标,一个计数器,依次将当前的字符和游标字符比较,如果相同,计数器++,游标继续后移,如果不同,将当前的字符加入到待输出的字符串中,并加入计数器的数量

class Zipper { public: string zipString(string iniString) { // write code here string str; char ch = iniString[0]; int count = 1; for (int i = 1; i < iniString.length(); i++){ if (iniString[i] == ch){ count++; } else{ str.push_back(ch); str += to_string(count); count = 1; ch = iniString[i]; } } str.push_back(ch); str += to_string(count); return str.length() < iniString.length() ? str : iniString; } };





版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233459.html原文链接:https://javaforall.net

(0)
上一篇 2025年7月17日 上午8:01
下一篇 2025年7月17日 上午8:22


相关推荐

  • STlink下载出现st-link usb communication error解决方法

    STlink下载出现st-link usb communication error解决方法一、下载st-link的老版本固件二、备份:关闭keil软件,备份C:\Keil_v5\ARM\STLink文件夹(此处防止失败)三、拷贝:拷贝已下载的老版本固件到C:\Keil_v5\ARM\STLink文件夹中三、固件升级点击ST-LinkUpgrade.exe,打开st-linkupgrade软件进行固件升级插上st-link固件到电脑,点击Device…

    2025年7月31日
    3
  • ubuntu copy命令「建议收藏」

    ubuntu copy命令「建议收藏」cp(copy)命令该命令的功能是将给出的文件或目录拷贝到另一文件或目录中。语法:cp[选项]源文件或目录目标文件或目录说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。该命令的各选项含义如下:-a该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。-d拷贝时保留链接。

    2025年7月25日
    8
  • Android系统默认Home应用程序(Launcher)的启动过程源码分析

    Android系统默认Home应用程序(Launcher)的启动过程源码分析

    2021年12月15日
    41
  • noip2018提高组初赛解析_NOIP提高组

    noip2018提高组初赛解析_NOIP提高组题目背景NOIP2012提高组DAY2试题。题目描述H国有n个城市,这n个城市用n-1条双向道路相互连通构成一棵树,1号城市是首都,也是树中的根节点。H国的首|都爆发了一种危害性极高的传染病。当局为了控制疫情,不让疫情扩散到边境城市(叶子节点所表示的城市),决定动用军队在一些城市建立检查点,使得从首都到边境城市的每一条路径上都至少有一个检查点,边境城市也可以…

    2022年8月22日
    8
  • native2ascii java_Native2Ascii和Ascii2Native的Java实现

    native2ascii java_Native2Ascii和Ascii2Native的Java实现packageutil;/***native2ascii.exeJavacodeimplementation.**@author*@version1.0*/publicclassNative2AsciiUtils{/***prefixofasciistringofnativecharacter*/privatestaticStringPREFIX=”\…

    2025年8月31日
    5
  • cocoapods安装过程_如何开发ios应用

    cocoapods安装过程_如何开发ios应用原文链接: iOS开发-CocoaPods安装和使用教程本文是对原文一些错误的修正已经添加了自己的理解。CocoaPods安装和使用教程Code4App原创文章。转载请注明出处:http://code4app.com/article/cocoapods-install-usage目录CocoaPods是什么?如何下载和安装CocoaPods?如何使用CocoaPods?场景1:利用CocoaP

    2025年8月22日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号