压缩字符串(一)
问题简述
利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2bc5a3。
1.如果只有一个字符,1不用写
2.字符串中只包含大小写英文字母(a至z)。
思路:滑动窗口
定义窗口
[l, r]
(闭区间);当
s[l] == s[r]
时,移动r
;否则,添加s[l]
和r - l
到结果,并将l
移动到r
位置,开启下一个窗口;注意最后一个窗口,
r
的循环区间应该是[0, N]
,而不是[0, N-1]
,所以在判断s[l] == s[r]
时要注意边界;
Last updated