美文网首页leetcode 剑指 offer
剑指 Offer 05. 替换空格

剑指 Offer 05. 替换空格

作者: 历十九喵喵喵 | 来源:发表于2020-07-16 00:12 被阅读0次

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

    又是对字符串的操作。

    题解:

    1.使用 StringBuilder 对象存储替换后的字符串,返回结果为 newstr.toString(),toString():返回此序列中数据的字符串表示形式。

    对字符串 s (使用 toCharArray() 转换为字符数组)进行遍历循环一次,使用 for 增强循环,变量  Character: c ,当 c 为 " " 时,使用 append() 方法添加 "%20" 到新的字符串,否则直接添加 c。

    2.使用字符数组  

    获取 s 的长度 length,创建字符数组 array, 长度为 length*3

    初始化 size 为 0 ,size 代表 array 的长度

    遍历  s ,

        获取 s 的当前字符c =  s.charAt(i),如果 等于 ' ' , 则用 array[size++] 添加 “%“,”2",“0”;

    否则,添加 c。

    将 array 转换为 字符串输出。

    String newstr = new String(array,0,size);

    时间复杂度:O(n)

    空间复杂度:O(n)

        

    相关文章

      网友评论

        本文标题:剑指 Offer 05. 替换空格

        本文链接:https://www.haomeiwen.com/subject/flgshktx.html