再刷剑指offer-2020.7.11
替换空格
https://www.nowcoder.com/practice/4060ac7e3e404ad1a894ef3e17650423?tpId=13&tags=&title=&diffculty=0&judgeStatus=0&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking
1、二维数组中的查找(一般思路及二分思路)
public class Solution {
public boolean Find(int target, int [][] array) {
int i=0,j=array[0].length-1;
while(i<array.length&&j>=0){
if(array[i][j]>target)j--;
else if(array[i][j]<target)i++;
else return true;
}
return false;
}
}
public class Solution {
public boolean Find(int target, int [][] array) {
for(int i=0;i<array.length;i++){
int l=0,h=array[0].length-1;
while(l<=h){
int mid=l+(h-l)/2;
if(array[i][mid]>target)h=mid-1;
else if(array[i][mid]<target)l=mid+1;
else return true;
}
}
return false;
}
}2、替换空格
public class Solution {
public String replaceSpace(StringBuffer str) {
StringBuilder sb=new StringBuilder();
for(int i=0;i<str.length();i++){
if(str.charAt(i)==' ')sb.append("%20");
else sb.append(str.charAt(i));
}
return sb.toString();
}
}
public class Solution {
public String replaceSpace(StringBuffer str) {
String s=str.toString();
s=s.replaceAll("\\s","%20");
return s;
}
}3、
海康威视公司福利 1160人发布
查看22道真题和解析