方法
算法思想:去除空格,双指针i先走,j再上来,然后保存
时间复杂度: O(N)
空间复杂度:O(N)
边界条件:
补充知识:各种length,双判i
class Solution {
public String reverseWords(String s) {
s=s.trim();
int j=s.length()-1,i=j; //字符串的lengh(),数组的length
StringBuilder res=new StringBuilder();
while(i>=0){
while(i>=0&&s.charAt(i)!=' ') i--;
res.append(s.substring(i+1,j+1)+' ');//左闭右开substring
while(i>=0&&s.charAt(i)==' ') i--;
j=i;
}
return res.toString().trim();//toString方法
}
}