以Head节点当作第三变量,不单独开辟新的节点空间。
void Inverse(SLNode *head) { SLNode *p, *q; p = head->next; head->next = NULL; while (p != NULL) { q = p; p = p->next; q->next = head->next; head->next = q; } }
分析: