美文网首页双指针
【剑指 offer】翻转单词顺序。

【剑指 offer】翻转单词顺序。

作者: 邓泽军_3679 | 来源:发表于2019-05-09 10:21 被阅读0次

1、题目描述

输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。

为简单起见,标点符号和普通字母一样处理。

例如输入字符串"I am a student.",则输出"student. a am I"。

样例

输入:"I am a student."
输出:"student. a am I"

2、问题描述:

3、问题关键:

  • 将整个句子翻转。reverse(s.begin(), s.end())
  • 将每个单词翻转就可以了。reverse(s.begin() + i, s.begin() + j)

4、C++代码:

class Solution {
public:
    string reverseWords(string s) {
        if (s.empty()) return s;
        int n = s.size();
        reverse(s.begin(), s.end());
        for (int i = 0; i < n; i ++) {
            int j = i;
            while(j < n && s[j] != ' ') j ++;
            reverse(s.begin() + i, s.begin() + j);
            i = j;
        }
        return s;
    }
};

相关文章

  • 剑指offer | 翻转单词顺序

    翻转单词顺序 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变,为简单起见,标点符号和普通字母一样处...

  • 【剑指 offer】翻转单词顺序。

    1、题目描述 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。 为简单起见,标点符号和普通字母一样...

  • 每日一练(31):翻转单词顺序

    title: 每日一练(31):翻转单词顺序 categories:[剑指offer] tags:[每日一练] d...

  • [剑指offer] 翻转单词顺序列

    本文首发于我的个人博客:尾尾部落 题目描述 牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句...

  • 【剑指Offer 42】翻转单词顺序

    题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字啊的顺序不变。为简单起见,标点符号和普通字母一样处理。 代...

  • 剑指Offer--翻转单词顺序

    题目描述:牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写...

  • 剑指offer第二版-58.翻转单词顺序

    本系列导航:剑指offer(第二版)java实现导航帖 面试题58:翻转单词顺序 题目要求:输入一个英文句子,翻转...

  • 剑指offer 某-翻转单词顺序列

    此题还算简单,但是总有更好的思路。第一反应是先翻转每个单词,再翻转每个句子。但是觉得翻转函数要自己写太麻烦了。(原...

  • 剑指offer 65- 翻转单词顺序

    输入一个英文句子,单词之间用一个空格隔开,且句首和句尾没有多余空格。 翻转句子中单词的顺序,但单词内字符的顺序不变...

  • 剑指 Offer 58 - I 翻转单词顺序

    题意:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如...

网友评论

    本文标题:【剑指 offer】翻转单词顺序。

    本文链接:https://www.haomeiwen.com/subject/rvmioqtx.html