剑指offer | 训练题43:翻转单词顺序列
2017-06-27 19:39
489 查看
题目描述
牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?/** * 思路:有了43题大神的思路,就能明白,这道题考察的还是翻转的翻转 */ class Solution { public: string ReverseSentence(string str) { if(str == "") return str; vector<string> splitstr; string splitone; string ans = ""; int strcnt = 0; int i = 0; int len = str.size(); while(i < len){ if(str[i] == ' '){ //找到一个单词了 splitstr.push_back(splitone); splitone = ""; strcnt++; i++; continue; } splitone += str[i]; i++; } splitstr.push_back(splitone);//最后一个单词 strcnt++; for(i = 0; i < strcnt; i++){ reverse(splitstr[i].begin(),splitstr[i].end()); ans += splitstr[i]; if(i != strcnt-1) ans += ' '; } reverse(ans.begin(),ans.end()); return ans; } };
相关文章推荐
- 剑指offer 编程题(43):翻转单词顺序列
- 剑指offer---翻转单词顺序列
- 剑指offer-42-翻转单词顺序列
- 剑指offer 45 翻转单词顺序列
- 剑指offer题解 翻转单词顺序列
- 剑指offer--翻转单词顺序列
- 剑指offer——44.翻转单词顺序序列
- 剑指offer:翻转单词顺序列
- 剑指offer----翻转单词顺序列----java实现
- 码农小汪剑指Offer之42-翻转单词顺序列
- 剑指offer—翻转单词顺序列
- [剑指offer]翻转单词顺序列
- 【剑指offer-解题系列(45)】翻转单词顺序列
- 剑指offer——翻转单词顺序列
- 剑指Offer - 翻转单词顺序列
- (C++)剑指offer-44:翻转单词顺序列(知识迁移能力)
- 剑指offer:翻转单词顺序列
- 剑指offer:翻转单词顺序列
- 剑指Offer之翻转单词顺序列
- 剑指Offer面试题41和为s的两个数字与和为s的连续正数序列,面试题42翻转单词顺序与左旋转字符串