牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?
2016-11-04 09:23
671 查看
// test20.cpp : 定义控制台应用程序的入口点。
//
//
#include "stdafx.h" #include<iostream> #include<vector> #include<string> #include<queue> #include<stack> #include<cstring> #include<string.h> #include<deque> using namespace std; class Solution { public: string ReverseSentence(string str) { //把单词翻转 利用stack //连接成一个新的单词 stack<string> st; string word; string s; int flag = 0; //if (flag < str.length()) //{ // word = str.substr(0, flag); // str = str.substr(flag+1);//存储剩余单词 // st.push(word); //} flag = str.find_first_of(" "); while (flag < str.length()) { word = str.substr(0, flag); cout << "word:" << word << endl; str = str.substr(flag + 1);//存储剩余单词 st.push(word); flag = str.find_first_of(" "); } st.push(str); while (st.size()!=1) { s.append(st.top()+" "); st.pop(); } s.append(st.top() + " "); st.pop(); return s; } }; int main() { Solution so; string str = "student. a am I"; string s = so.ReverseSentence(str); cout << s << endl; cout << endl; return 0; }
相关文章推荐
- 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。 句子中单词以空格符隔开。为简单起见,没有标点符号。 例如输入“I am a student”,则输出“student a
- "输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。 句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。 例如输入“I am a student.”,则输出“student
- 题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。例如输入“I am a student.”,则输出“student
- 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。(笔试题) 句子中单词以空格符隔开。为简单起见,没有标点符号。 例如输入“I am a student”,则输出“student a
- 每天学习一点编程(2)(输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变)
- 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不改变
- C++: 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。
- 编写一个程序,输入一个英文句子,将其中单词位置倒置,单词内部结构不变。例如“I am from shanghai”倒置为“shanghai from am I”。
- 输入一个英文句子,翻转句子中单词的顺序,单词内字符顺序不变
- 面试题:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。
- java-颠倒一个句子中的词的顺序。比如: I am a student颠倒后变成:student a am I
- 每天学习一算法系列(10)(输入一句英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变,句子中单词以空格符隔开)
- 输入一个英文句子,翻转句子中单词的顺序,但单词内字符顺序不变
- 颠倒一个句子中的词的顺序。比如: I am a student颠倒后变成:student a am I.
- java算法实现之--输入一个英文句子,翻转句子中的单词顺序,但单词内字符的顺序不变
- 编写一个C函数,将”I am a student. ”倒置为”student. a am I”,及将句子中的单词位置倒置,而不改变单词内部结构.
- 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。
- 面试题:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。
- 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。
- (Java)输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变,句子中单词以单个空格符隔开