替换空格
题目描述
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
时间复杂度是 O(N), 空间复杂度也是 O(N)
public class Solution {
public String replaceSpace(StringBuffer str) {
if(str==null)
return null;
char [] chDatas=str.toString().toCharArray();
StringBuffer newStr=new StringBuffer();
for(int i=0;i<chDatas.length;i++){
if(chDatas[i]==' '){
newStr.append("%20");
}else{
newStr.append(chDatas[i]);
}
}
return newStr.toString();
}
}
相关题目
有两个排序的数组 A1 和 A2,内存在 A1 的末尾有足够多的空余空间容纳 A2 。 请实现一个函数,把 A2 中的所有数字插入 A1 中,并且所有的数字是排序的。
思路:
从后面开始比较。
//numA表示数组A中现有的元素个数
//numB表示数组B中现有的元素个数
public int[] merge(int[] arrayA,int numA,int [] arrayB,int numB){
int toltalNum=numA+numB;
int i=numA-1,j=numB-1;
while(i>=0&&j>=0){
if(arrayA[i]>arrayB[j]){
arrayA[--toltalNum]=arrayA[i--];
}else{
arrayA[--toltalNum]=arrayB[j--];
}
}
return arrayA;
}
才学疏浅,有什么问题请大家指出来。十分感谢!