首页 > 其他 > 详细

剑指Offer总结——替换空格

时间:2020-03-04 01:04:57      阅读:119      评论:0      收藏:0      [点我收藏+]

这一次我们来做“替换空格”:

class Solution {
public:
    void replaceSpace(char *str,int length) {
        int len = 0, resLen = 0;
        while(str[len] != '\0') {
            if(str[len] == ' ') {
                resLen += 2;
            }
            ++len;
            ++resLen;
        }
        while(len>=0) {
            if(str[len]==' ') {
                str[resLen--] = '0';
                str[resLen--] = '2';
                str[resLen--] = '%';
                --len;
            }
            else {
                str[resLen--] = str[len--];
            }
        }
    }
};

思路很简单,这里简单说一下:

  1. 计算出最终答案的长度(就是resLen
  2. 从尾部向头部进行插入,当发现了空格的时候直接按照0、2、%来插入

剑指Offer总结——替换空格

原文:https://www.cnblogs.com/yejianying/p/jianzhioffer_replacing_spaces.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!