编写一个函数,其作用是将输入的字符串反转过来。
示例 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<algorithm>
return s;
}
};
reverse居然比O(N)的方法还要快,需要掌握住。