题解 | #翻转单词序列#
翻转单词序列
http://www.nowcoder.com/practice/3194a4f4cf814f63919d0790578d51f3
使用双指针 倒序遍历字符串 ss ,记录单词左右索引边界 ii , jj ;
每确定一个单词的边界,则将其添加至单词列表 resres ;
最终,将单词列表拼接为字符串,并返回即可。
复杂度分析:
public class Solution {
public String ReverseSentence(String str) {
// 两边去除空格
str = str.trim();
StringBuilder sb = new StringBuilder();
int j = str.length()-1, i =j;
while (i >= 0){
while(i >= 0 && str.charAt(i) != ' '){
i--;
}
sb.append(str.substring(i+1,j+1)+" ");
while(i >= 0 && str.charAt(i) == ' '){
i--;
}
j = i;
}
return sb.toString().trim();
}
}
剑指offer刷题记录 文章被收录于专栏
这个专栏主要记录算法刷题记录 希望对看到的人有所帮助

