字符串的就地逆置
/* 非递归实现 */void reverse(char *s){ char *head; char *tail; char tmp; head = s; tail = head + strlen(s) - 1; while (head < tail) { tmp = *head; *head = *tail; *tail = tmp; head++; tail--; }}/* 递归实现 */void reverse(char *str, int len){ if (len <= 1) return; char *end = str + len - 1; char tmp; tmp = *str; *str = *end; *end = tmp; reverse(str + 1, len - 2);}
页:
[1]