百度公司面试题,要求空间复杂度最小,希望各位有更好地解答........................
/**
* 要求:将一个英文句子反转
* 但不能使用String的库函数:split,indexOf,lastIndexOf,subString且要求空间复杂度最小
*
*
*/
public class Reverse {
public static void main(String[] args){
String str ="who am I";
System.out.println(reverse(str));
}
public static String reverse(String str){
int position=0;
int i=0;
StringBuilder sb=new StringBuilder();
while(i<str.length()){
char temp=str.charAt(i);
if(temp==' '){
position=0;
sb.insert(position,temp);
}else{
sb.insert(position,temp);
position++;
}
i++;
}
return sb.toString();
}
}