美文网首页
Day2 剑指offer:空格替换

Day2 剑指offer:空格替换

作者: zheng7 | 来源:发表于2017-08-01 17:35 被阅读0次

    请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

    public class Solution {
        public String replaceSpace(StringBuffer str) {
            int length = str.length();
            int numOfSpace = 0;
            int lengthFinal = length;
            
            for(int i=0; i<length; i++){
                if(str.charAt(i) == ' '){
                    lengthFinal++;
                    lengthFinal++;
                }
            }
            str.setLength(lengthFinal);
            
            for(int i=length-1 ,j=lengthFinal-1; i>=0&& j>=0;){
                    if(str.charAt(i) == ' '){
                        str.setCharAt(j, '0');
                        j--;
                        str.setCharAt(j, '2');
                        j--;
                        str.setCharAt(j, '%');
                        j--;
                        i--;
                    }else{
                        str.setCharAt(j, str.charAt(i)); 
                        j--;
                        i--;
                    }
            }
            return str.toString();
        }
    }
    

    相关文章

      网友评论

          本文标题:Day2 剑指offer:空格替换

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