笔试训练48天:倒置字符串

REAL506 倒置字符串

倒置字符串_牛客题霸_牛客网

简单 通过率:28.64% 时间限制:1秒 空间限制:32M

知识点Java工程师字符串2017C++工程师好未来

描述

将一句话的单词进行倒置,标点不倒置。比如 I like beijing. 经过函数后变为:beijing. like I

输入描述:

每个测试输入包含1个测试用例: I like beijing. 输入用例长度不超过100

输出描述:

依次输出倒置之后的字符串,以空格分割

示例1

输入:I like beijing.

输出:beijing. like I

思路:先部分逆序,再整体逆序

cpp 复制代码
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main() {
    string s;
    getline(cin, s);
    reverse(s.begin(), s.end());
    int left = 0, n = s.size();
    while (left < n) {
        int right = left;
        while (right < n && s[right] != ' ') { // 找单词
            right++;
        }
        reverse(s.begin() + left, s.begin() + right);
        while (right < n && s[right] == ' ') right++;
        left = right;
    }
    cout << s << endl;
    return 0;
}
相关推荐
Logic1012 小时前
C语言/数据结构位运算题解:异或XOR找出蛋糕订单中的“VIP独特口味“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
Logic1013 小时前
C语言/数据结构位运算题解:异或XOR找出飞行棋中的“独特颜色棋子“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
爱吃苹果的日记本3 小时前
数据结构第三课(时间复杂度)
数据结构·学习
Logic1015 小时前
C语言/数据动态规划题解:翻转一次子数组后的最大子数组和——四状态DP(O(n)时间O(1)空间)
c语言·数据结构·动态规划·时间复杂度·算法题·状态机dp·最大子数组和
小π军6 小时前
最大重叠区间数量
数据结构·算法
Logic1016 小时前
C语言/数据结构字符串题解:找出DNA序列中未配对的独特序列——排序+遍历(O(nlogn))
c语言·数据结构·字符串·数组·排序·时间复杂度·算法题
wzdark7 小时前
基于链表的内存池设计与内存复用机制4
java·数据结构·链表
BizzZ_10 小时前
算法(1)——双指针
数据结构
Doubbbbbbble云10 小时前
内存碎片化对数据结构操作性能的影响研究4
数据结构
xiangyun6112 小时前
【408数据结构 03】线性表与顺序表:C++手写SeqList
开发语言·数据结构·c++