前言
题目:编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。
不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。
一、示例
二、思路和代码
1.思路
第一个和最后一个对换,第二个和倒数第二个对换,第三个和倒数第三个对换,以此类推,对换的次数是数组的长度除以2.
2.代码
代码如下(示例):
void reverseString(char* s, int sSize){
int time, i, j, temp;
time = sSize / 2;
j = sSize;
for(i = 0; i < time; i++) {
temp = s[i];
s[i] = s[j-1];
s[j-1] = temp;
--j;
}
return ;
}
结果如图所示: