leetcode:Reverse Words in a String
2014-06-13 16:22
183 查看
翻转单词,解析出字符串里面的每一个单词,然后将其逆序输出。所以本题的关键是怎么解析出每一串的单词
定义两个字针i,j,i字针总是指向单词的开头(过滤掉空格字符),j字针指向字针i开头的之后字符串中的第一个空格符,那么i-j间的就是一个单词,但是遍历到最后
需要注意j不能超过字符串的长度,遍历结束之后还是要再判断一次有没有漏掉最后一个单词
定义两个字针i,j,i字针总是指向单词的开头(过滤掉空格字符),j字针指向字针i开头的之后字符串中的第一个空格符,那么i-j间的就是一个单词,但是遍历到最后
需要注意j不能超过字符串的长度,遍历结束之后还是要再判断一次有没有漏掉最后一个单词
public class Solution { public String reverseWords(String s) { char[] str = s.toCharArray(); List<String> list = new ArrayList<>(); int i = 0,j = 0; while(i < str.length && str[i] == ' ') i++; for( j = i + 1; j < str.length; ){ while(j < str.length && str[j] != ' ')j++; list.add(new String(str, i ,j - i)); i = j; while(i < str.length && str[i] == ' ') i++; j = i + 1; } if(i < str.length && j >= str.length){ list.add(new String(str, i, j - i)); } StringBuilder sb = new StringBuilder(); for(i = list.size() - 1; i >= 1; --i){ sb.append(list.get(i)); sb.append(' '); } if(list.size() != 0) sb.append(list.get(0)); return sb.toString(); } void reverse(List list){ } }
相关文章推荐
- Leetcode 第151题 最新题解 Reverse Words in a String
- leetcode JAVA Reverse Words in a String 难度系数2-3?最新题151
- LeetCode(151)Reverse Words in a String
- Leetcode: Reverse Words in a String
- LeetCode Reverse Words in a String
- 【LeetCode with Python】 Reverse Words in a String
- [LeetCode]Reverse Words in a String
- leetcode Reverse Words in a String
- [leetcode]Reverse Words in a String
- Leetcode_Reverse-Words-in-a-String
- LeetCode | Reverse Words in a String
- Reverse Words in a String (LeetCode)
- [Leetcode Solution] Reverse Words in a String
- LeetCode151:Reverse Words in a String
- 【LeetCode】Reverse Words in a String
- [leetCode]Reverse Words in a String
- leetcode - Reverse Words in a String
- [LeetCode] Reverse Words in a String
- 【LeetCode】Reverse Words in a String
- 【LeetCode】Reverse Words in a String