344. Reverse String
Write a function that takes a string as input and returns the string reversed.
Example:
Given s = "hello", return "olleh".
解题方法1:
定义一个指针数组,通过赋值进行反转操作
执行时间 8ms
char* reverseString(char* s) {
int i,j;
int length=strlen(s);
/*for(i=0;s[i] != '\0';i++)
{
count++;
}*/
char* p=NULL;
p=(char *)calloc((length+1),sizeof(char));//若用malloc提交时"rac a ecar"的结果为"race a car.."(不知道为什么?)
for(i=length-1,j=0;j<length;i--)
{
p[j]=s[i];
j++;
}
return p;
}
解题方法2:
字符串内部反转,首尾交换
执行时间 6ms
char* reverseString(char* s) {
int n = strlen(s), i;
char temp;
for(i = 0; i < n; i++, n--){
temp = *(s + i);
*(s + i) = * (s + n- 1);
* (s + n - 1) = temp;
}
return s;
}