题解 | #字符串反转#

字符串反转

http://www.nowcoder.com/practice/e45e078701ab4e4cb49393ae30f1bb04

HJ12 字符串反转

一.题目描述

给一串只含有小写字母的字符串将其反转后输出

alt

二.算法(reverse实现)

对于字符串的反转我们可以使用c++内置的reverse函数来实现,首先读入一个string字符串,然后用reverse函数反转后,输出。下面是完整代码:

#include<bits/stdc++.h>
using namespace std;
int main()
{
    string s;
    cin>>s;
    reverse(s.begin(),s.end());//利用reverse实现字符串反转
    cout<<s<<endl;//输出反转后的字符串
    return 0;
}

时间复杂度:O(n)O(n) reverse函数的时间复杂度大约在O(n)O(n)

空间复杂度:O(1)O(1) 不需要额外空间

三.算法(模拟)

要求对于字符串进行反转,我们可以将输入的字符串反向输出即可,将会输出字符串的逆序,下面是完整代码:

#include<bits/stdc++.h>
using namespace std;
int main(){
    string s;
    cin>>s;
    for(int i=s.size()-1;i>=0;i--){//s的下标是从0开始的
        cout<<s[i];
    }
    cout<<endl;
    return 0;
}

时间复杂度:O(n)O(n) 需要对字符串进行反向遍历一遍

空间复杂度:O(1)O(1) 不需要额外空间

全部评论

相关推荐

Jcwemz:中软证书写单行,考了什么学了什么相关技术栈的内容就说自己会什么, 没实习就包装实习简历,将项目经历写成实习做的,项目时间拉长,项目成果具体化,测试的项目成果无非就是写了多少用例查出了多少bug,重要的不是实习了多久,而是你会多少东西,你能表达的就都是你的。 cet4,随便找个地方标上就好了,不用写单行。 粗略建议,我也不在行,觉得对的可以采纳
实习,投递多份简历没人回...
点赞 评论 收藏
分享
2025-12-15 12:50
河北工程大学
sta666:我也是这个国际商业化的,三天,一天一面,就通过了,不过我是后端实习生,好好面感觉能过。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务