这个题目经典又简单,一分钟搞定吧!
目录
题目描述:
写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)
例:
输入:"abcd"
返回值:"dcba"
(这是牛客网提供的一道题目,想尝试的码友们,可以通过这个链接挑战https://www.nowcoder.com/practice/c3a6afee325e472386a1c4eb1ef987f3?tpId=188&&tqId=38605&rp=1&ru=/ta/job-code-high-week&qru=/ta/job-code-high-week/question-ranking)
(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat)
思路一(运行时间:14ms):
按照逆序遍历给定的字符串str的每个字符,用这些字符构建新的字符串s。
(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat)
class Solution {
public:
/**
* 反转字符串
* @param str string字符串
* @return string字符串
*(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat)
*/
string solve(string str) {
// write code here
string s;
for(int i = (str.length() - 1); i >= 0; i--){
s += str[i];
}
return s;
}
};
思路二(运行时间:10ms):
交换给定的字符串str的首尾字符。
(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat)
class Solution {
public:
/**
* 反转字符串
* @param str string字符串
* @return string字符串
*(更多博文,欢迎来我的博客学习交流https://blog.csdn.net/have_a_cat)
*/
string solve(string str) {
// write code here
int j;
for(int i = 0; i < (str.length()/2); i++)
{
j = str.length() - i -1;
swap(str[i], str[j]);
}
return str;
}
};