您的位置:首页 > 其它

LintCode 53 翻转字符串

2017-04-29 09:53 176 查看

题目:reverseWords

要求:

给定一个字符串,逐个翻转字符串中的每个单词。

样例:

单词的构成:无空格字母构成一个单词

输入字符串是否包括前导或者尾随空格?可以包括,但是反转后的字符不能包括

如何处理两个单词间的多个空格?在反转字符串中间空格减少到只含一个

算法要求:



解题思路:

用strtok进行字符串分割。

算法如下:

string reverseWords(string s) {
// write your code here
stringstream in;
stringstream out;
in << s;
char str[101][101];
char tempStr[1001];
in.getline(tempStr, 1001);
int num = 0;
char *t = NULL;
for (t = strtok(tempStr, " "); t != NULL; t = strtok(NULL, " ")) {
strcpy(str[num++], t);
}
for (int i = num - 1; i >= 0; i--) {
out << str[i] << " ";
}
return out.str();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: