• [leetcode-557-Reverse Words in a String III]


    Given a string, you need to reverse the order of characters in each word within a sentence while
    still preserving whitespace and initial word order.
    Example 1:
    Input: "Let's take LeetCode contest"
    Output: "s'teL ekat edoCteeL tsetnoc"
    Note: In the string, each word is separated by single space and there will not be any extra space in the string.
    思路:

    用一个vector<vector<char> >收集所有的字符,空格为单词分割符,将每一个单词翻转后,输出即可。

    感觉思路还比较朴素,但是看上去很啰嗦。

    string reverseWords(string s)
    {
        if(s == "")return s;
        vector<vector<char> >sentence;
        vector<char>word;
        int i=0;
        while(s[i] != '')
        {
            if(s[i]!=' ')
            {
                word.insert(word.begin(),s[i]);
            }
            else
            {
                sentence.push_back(word);
                word.clear();
            }
            i++;
        }
        sentence.push_back(word);
        char res[100000];//太小 要用100000
        int ind =0;
        for(int i=0;i<sentence.size();i++)
        {
            for(int j=0;j<sentence[i].size();j++)
            {
                res[ind] = sentence[i][j];
                ind++;
            }
             res[ind] = ' ';
             ind++;
        }
         res[ind-1] = '';
        return res;
    }
  • 相关阅读:
    第十八周个人作业
    十六周个人作业
    个人作业
    第十四周总结
    第十三周周末总结
    排球计分程序说明书
    我和计算机
    排球比赛记分员
    逻辑思维怎样成为一个高手
    用户故事排球教练助手
  • 原文地址:https://www.cnblogs.com/hellowooorld/p/6684449.html
Copyright © 2020-2023  润新知