Problem 344.Reverse String

来源:互联网 发布:php教程百度云 编辑:程序博客网 时间:2024/04/30 14:18

题目地址:https://leetcode.com/problems/reverse-string/#/description
简单理解:

很明显,就是一道字符串反转的题目,如input="hello",那么output=“ollleh"

我的解法:
1.  第一眼的想法就是使用一个临时的字符串temp,然后通过for循环依次将input的string 从最后一个字符到第一个添加到temp后面.这样做的复杂度是o(n).
代码如下:

class Solution {public:    string reverseString(string s) {        string reversed;        for(int i = 0;i<s.length();i++){            reversed += s[s.length()-i-1];        }        return reversed;}};

2.很明显,我们可以把复杂度降低到o(n/2).即只需要将前半段和后半段互换即可.代码如下:

class Solution {public:    string reverseString(string s){    for(auto i = 0;i<s.length()/2;i++){        swap(s[i],s[s.length()-1-i]);           }    return s;}};
0 0
原创粉丝点击