1.二维数组中的查找
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
public class Solution {
public boolean Find(int target, int [][] array) {
int len=array[0].length-1;
int n=0;
while((len>=0)&&(array.length>n)){
if(array[n][len]>target){
len--;
}else if(array[n][len]<target){
n++;
}else{
return true;
}
}
return false;
}
}
2.替换空格
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
public class Solution {
public String replaceSpace(StringBuffer str) {
if(str==null)return null;
int blankNum=0;
int len=str.length();
int newLen=0;
for(int i=0;i<len;i++){
if(str.charAt(i)==' '){
blankNum++;
}
}
newLen=len+2*blankNum;
char[] charArr=new char[newLen];
int index=newLen-1;
for(int i=len-1;i>=0;i--){
if(str.charAt(i)==' '){
charArr[index--]='0';
charArr[index--]='2';
charArr[index--]='%';
}else{
charArr[index--]=str.charAt(i);
}
}
return new String(charArr);
}
}
网友评论