题目考察的知识点:字符串
题目解答方法的文字分析:遍历chars数组,记录相同元素的个数,不相同,则将count转为字符串,然后插入到v数组即可。
本题解析所用的编程语言:c++
#include <algorithm>
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param chars char字符型vector
* @return char字符型vector
*/
vector<char> compress(vector<char>& chars)
{
// write code here
vector<char> v;
chars.push_back('0'); //防止越界
for (int i = 0; i < chars.size() - 1; ++i)
{
int count = 1;
while (chars[i] == chars[i + 1])
{
++count;
++i;
}
v.push_back(chars[i]);
if (count > 1)
{
string num = to_string(count);
for (int i = 0; i < num.size(); ++i)
v.push_back(num[i]);
}
}
return v;
}
};

京公网安备 11010502036488号