题目
字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母(a至z)
示例1:
1 | 输入:"aabcccccaaa" |
示例2:
1 | 输入:"abbccd" |
解法
解法一:
遍历时统计
初始化时,currentChar是字符串的第一个字符
从1开始,如果当前位置上的字符,等于currentChar,count++,否则,将当前字符追加到sb上,然后currentChar设为当前字符,count重置为1
JAVA
1 | public String compressString(String S) { |