翻转单词顺序列
Posted vaevaevae
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了翻转单词顺序列相关的知识,希望对你有一定的参考价值。
先整体翻转一次,再一个个进行翻转,需要注意的是代码里一些字符串的操作,值得记住。
1 class Solution { 2 public: 3 string ReverseSentence(string str) { 4 if (str.empty()) return str; 5 reverse(str.begin(), str.end()); 6 7 size_t beg = 0; 8 size_t end = 0; 9 while (end != string::npos){ 10 beg=str.find_first_not_of(‘ ‘,beg); 11 end=str.find_first_of(‘ ‘,beg); 12 13 if (beg == string::npos) return str; 14 if (end == string::npos) 15 reverse(str.begin()+beg, str.end()); 16 else 17 { 18 reverse(str.begin()+beg, str.begin()+end); 19 beg = end+1; 20 } 21 } 22 23 return str; 24 } 25 };
以上是关于翻转单词顺序列的主要内容,如果未能解决你的问题,请参考以下文章