LeetCode--反转字符串

编写一个函数,其作用是将输入的字符串反转过来。

示例 1:

输入: "hello"
输出: "olleh"
示例 2:

输入: "A man, a plan, a canal: Panama"
输出: "amanaP :lanac a ,nalp a ,nam A"

思路:学习LeetCode最重要的不是刷了多少题,而是掌握了多少新的方法。我的方法如下

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

最快的方法是这样

class Solution {
public:
    string reverseString(string s) {
        if(s.length()<=1)
            return s;
        reverse(s.begin(), s.end());//reverse()会将区间[beg,end)内的元素全部逆序;可能需要头文件#include
        return s;
    }
};

reverse居然比O(N)的方法还要快,需要掌握住。

你可能感兴趣的:(LeetCode--反转字符串)