题目

请实现一个函数,把字符串 s 中的每个空格替换成”%20”。

示例 1:

输入:s = "We are happy."
输出:"We%20are%20happy."

限制:

0 <= s 的长度 <= 10000

解答

  • 常规思路

新建一个string类型的变量result,对输入的字符串s的每个字符进行判断,若字符为空格,则result+="%20;",否则result+=s[i];,C++代码实现如下:

class Solution {
public:
    string replaceSpace(string s) {
        string result = ""; // 定义结果字符串result
        int n = s.length(); // 获取输入字符串s的长度
        for(int i = 0; i < n; i++) { // 进行遍历
            if (s[i] == ' ') { // 若s[i]为空格,则result+="%20";
                result += "%20";
            }
            else { // 否则直接+=s[i];
                result += s[i];
            }
        }
        return result; // 最后返回结果值result
    }
};