题目考察的知识点:字符串
题目解答方法的文字分析:遍历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; } };