【Leetcode】Reverse Words in a String
2014-10-01 11:53
267 查看
Given an input string, reverse the string word by word.
For example,
Given s = "
return "
补充说明:
单词是指空格之间的字符序列。
输入中可能有首部或尾部的空格,输出中应去除。
两个单词之间的多个空格应该压缩为单个空格。
解法:从后向前扫描字符串,找到单词时,插入返回字符串的末尾。
For example,
Given s = "
the sky is blue",
return "
blue is sky the".
补充说明:
单词是指空格之间的字符序列。
输入中可能有首部或尾部的空格,输出中应去除。
两个单词之间的多个空格应该压缩为单个空格。
解法:从后向前扫描字符串,找到单词时,插入返回字符串的末尾。
class Solution { public: void reverseWords(string &s) { string ret; int begin = s.size() - 1, len = 0; while (begin >= 0) { while (begin >= 0 && s[begin] == ' ') { --begin; } while (begin >= 0 && s[begin] != ' ') { --begin; ++len; } if (len > 0) { if(ret.empty()) { ret = s.substr(begin + 1, len); } else { ret = ret + " " + s.substr(begin + 1, len); } len = 0; } } s = ret; } };
相关文章推荐
- 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