151.反转字符串中的单词
方法:从后向前遍历+双指针
class Solution {
public String reverseWords(String s) {
//直接从后向前遍历,使用双指针
int start,end;
StringBuilder builder = new StringBuilder();
for(int i = s.length()-1;i>=0;i--){
if(s.charAt(i) == ' '){
continue;
}
end = i + 1;
while(i >= 0 && s.charAt(i) != ' '){
i--;
}
start = i + 1;
for(int j = start; j < end; j++){
builder.append(s.charAt(j));
}
builder.append(' ');
}
//去掉最后添加的空格
return builder.toString().trim();
}
}