请实现一个算法,在不使用额外数据结构和储存空间的情况下,翻转一个给定的字符串(可以使用单个过程变量)。
给定一个string iniString,请返回一个string,为翻转后的字符串。保证字符串的长度小于等于5000。
测试样例:
"This is nowcoder"
返回:"redocwon si sihT"
题意理解:不能使用额外数据结构和存储空间,只能使用单个额外变量,实现字符串翻转
思路:对称位置字符互换
代码如下:
class Reverse { public: string reverseString(string iniString) { // write code here for(int i = 0; i < iniString.size() / 2 ;i++){ char ch = iniString[i]; iniString[i] = iniString[iniString.size() - i - 1]; iniString[iniString.size() - i - 1] = ch; } return iniString; } };