leetcode 字符串压缩

 思路:

用双指针的方法,定一个 i  和  j

 AC代码:

class Solution {
public:
    string compressString(string S) {
        //两层循环
        if(S.size()==0) return S;
        int i=0,j=0;
        string ans="";
        int len=S.size();
        while(i<len) //外层循环
        {
            while(j<len&&S[j]==S[i])//内层循环
            {
                j++;
            }
            //跳出循环
            ans+=S[i]+to_string(j-i);
            i=j;//i从下标j的地方开始计数
        }

        return ans.size() >= len ? S : ans;

    }
};

如有错误,多多指教!


版权声明:本文为qq_61342044原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。