[每日一题] 39. 字符串反转(字符串、编程基础)

1. 题目来源

链接:字符串反转
来源:牛客网

2. 题目说明

写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。例如:

输入描述:

输入N个字符

输出描述:

输出该字符串反转后的字符串

示例:

输入:
abcd
输出
dcba

3. 题目解析

字符串反转,需要交换首尾字符,设置首尾两个位置start,end,每次交换首尾字符,然后start++, end–, 直到start,end相遇,反转完成。

4. 代码展示

#include <bits/stdc++.h>

using namespace std;

string reverseString(string s) {
    if (s.empty()) 
        return s;
    size_t start = 0;
    size_t end = s.size() - 1;
    while (start < end) {
        swap(s[start], s[end]);
        ++start;
        --end;
    }
    return s;
}

int main() {
    string s;
    getline(cin, s);
    cout << reverseString(s) << endl;
    return 0;
}

版权声明:本文为yl_puyu原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。