zoukankan      html  css  js  c++  java
  • 面试题 01.06. 字符串压缩

    字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母(a至z)。
     示例1:
     输入:"aabcccccaaa"
     输出:"a2b1c5a3"

     示例2:
     输入:"abbccd"
     输出:"abbccd"
     解释:"abbccd"压缩后为"a1b2c2d1",比原字符串长度更长。

    提示:

    字符串长度在[0, 50000]范围内。
     
    思路:运用STL,之前用C写错了N次,学了点c++用STL马上就有思路就过了,还有就是学了一个新东西,将数字转化成string,用 str = to_string(num) .
     1 string compressString(string S) 
     2 {
     3     string res = "";
     4 
     5     for(int i = 0; i < S.size(); i++)
     6     {
     7         int j = 0;
     8         for(j = i; S[j] == S[i]; j++);
     9         j -= i;
    10         res += S[i];
    11         res += j+'0';
    12         i += (j-1);
    13     }
    14 
    15     if(res.size() > S.size())
    16     return S;
    17     else
    18     return res;
    19 }
     
  • 相关阅读:
    异步编程(二)----------------多线程
    异步编程(一)
    爬虫笔记(四)--基于bs4
    统计某学校考研录取信息
    爬虫笔记(三)爬取‘糗事百科’热图板块所有图
    Day1登录接口编写
    元祖
    列表
    常用函数
    字符串
  • 原文地址:https://www.cnblogs.com/ZhengLijie/p/12854715.html
Copyright © 2011-2022 走看看