AcWing 16. java
原题链接
简单
作者:
codeDonald
,
2019-04-27 17:58:28
,
所有人可见
,
阅读 2877
class Solution {
public String replaceSpaces(StringBuffer str) {
int count =0;
int length=str.length();
for(int i=0;i<length;i++){
if(str.charAt(i)==' ')
count++;
}
int nl =length +2*count;
str.setLength(nl);
int indexold =length - 1; //原来字符最后的那个
int indexnew = nl -1; //扩容后最后的下标
for(;indexold>=0 &&count>0;indexold--){ //没空格了就跳出了
if(str.charAt(indexold)==' '){
str.setCharAt(indexnew--,'0');
str.setCharAt(indexnew--,'2');
str.setCharAt(indexnew--,'%');
--count;
}else
str.setCharAt(indexnew--,str.charAt(indexold));
}
return str.toString();
}
}
感谢大佬