写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)
数据范围: 0≤n≤1000
要求:空间复杂度 O(n),时间复杂度 O(n)
法一:
class Solution {
public:
/**
* 反转字符串
* @param str string字符串
* @return string字符串
*/
string solve(string str) {
// write code here
string ans=str;
int len=str.length();
for(int i=0;i<len;i++)
{
ans[i]=str[len-i-1];
}
return ans;
}
};
法二:
public:
/**
* 反转字符串
* @param str string字符串
* @return string字符串
*/
string solve(string str) {
// write code here
int len=str.length();
for(int i=0;i<len/2;i++)
{
swap(str[i],str[len-i-1]);
}
return str;
}
};
法三:
直接用库函数
class Solution {
public:
/**
* 反转字符串
* @param str string字符串
* @return string字符串
*/
string solve(string str) {
// write code here
reverse(str.begin(),str.end());
return str;
}
};