双指针写法
class Solution {
public String reverseWords(String s) {
s = s.trim();
int i = s.length() - 1;
int j = i;
StringBuilder res = new StringBuilder();
while(i>=0){
while(i>=0 && s.charAt(i)!=' ') i--;
res.append(s.substring(i+1,j+1) + " ");
while(i>=0 && s.charAt(i)==' ') i--;
j=i;
}
return res.toString().trim();
}
}
库函数写法
class Solution {
public String reverseWords(String s) {
String[] ss = s.trim().split(" ");
StringBuilder res = new StringBuilder();
for(int i=ss.length-1; i>=0; i--){
if(ss[i].equals("")) continue;
res.append(ss[i] + " ");
}
return res.toString().trim();
}
}