力扣 243场竞赛–第二题
class Solution {
public String maxValue(String str, int target) {
/**
思路:
从前向后遍历
如果是正数>0 ,那我们插入的位置应该是第一个 <x的位置 所以我们寻找第一个比x小的元素,在它前面插入
如果是负数<0 ,那我么插入的位置应该是第一个 >x的前面的位置 所以我们寻找第一个比大于的元素 在它前面插入
-1213123412 3
*/
if(str.charAt(0) != '-'){
//第一种情况
int i = 0 ;
while(i< str.length() && (str.charAt(i)-'0' >=target)) i++;
str=insert(str , i , target);
}else{
//第二种情况
int i = 1 ;
while(i< str.length() && (str.charAt(i)-'0' <=target)) i++;
str=insert(str , i , target);
}
return str;
}
public String insert (String str , int index, int target){
return str.substring(0,index)+target+str.substring(index);
}
}