题目描述:
请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
示例 1:
输入:s = "We are happy."
输出:"We%20are%20happy."
限制:
0 <= s 的长度 <= 10000
解题思路:
已知要返回一个新的字符串,则新的字符串的长度newS应该大于等于原字符串,小于等于原字符串长度的三倍,
于是有s.length<=nesS.length<=3*s.length,则我们新建一个字符型数组 array,长度设为3*s.length,然后遍历原字符串,若为‘ ’则替换为‘%20’,不为‘ ’,则替换为是s[i]
1 class Solution { 2 public String replaceSpace(String s) { 3 int length=s.length(); 4 char[] array=new char[3*length]; 5 //定义长度 6 int size=0; 7 for(int i=0;i<length;i++){ 8 char c=s.charAt(i); 9 if(c==' '){ 10 array[size++]='%'; 11 array[size++]='2'; 12 array[size++]='0'; 13 } 14 else{ 15 array[size++]=c; 16 } 17 } 18 String newS=new String(array,0,size); 19 return newS; 20 } 21 }
浙公网安备 33010602011771号