标签:
思路一:从左向右扫描字符串替换
public class Solution { public String replaceSpace(StringBuffer str) { // 空格的个数 int spaceNum = 0; // 遍历查找空格的个数 for(int i=0; i<str.length(); i++) { if(str.charAt(i) == ‘ ‘) { spaceNum ++; } } int indexOld = str.length() - 1; // 原字符串下标 int indexNew = str.length() + 2 * spaceNum - 1; // 新字符串下标 str.setLength(indexNew+1); // 设置新的str长度 while (indexOld >= 0 ) { if(str.charAt(indexOld) == ‘ ‘) { str.setCharAt(indexNew--, ‘0‘); str.setCharAt(indexNew--, ‘2‘); str.setCharAt(indexNew--, ‘%‘); } else { str.setCharAt(indexNew--, str.charAt(indexOld)); } indexOld --; } return str.toString(); } }
标签:
原文地址:http://www.cnblogs.com/zywu/p/5756838.html