5.翻转字符串

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

说明
  • 单词的构成:无空格字母构成一个单词
  • 输入字符串是否包括前导或者尾随空格?可以包括,但是反转后的字符不能包括
  • 如何处理两个单词间的多个空格?在反转字符串中间空格减少到只含一个

class Solution {
public:
    /**
     * @param s : A string
     * @return : A string
     */
    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();
    }
};

原文地址:https://www.cnblogs.com/ALIMAI2002/p/7211066.html