struct node *inverse(struct node *L){ node *head=NULL,*temp; while(L!=null) { temp=L->next; //①先将链表的下一项记录下来 L->next=head; //②取出当前节点L,将节点L插到head的头顶,也就是L->next=head head=L; //③然后将头指针修改为L(因为在上一步L插在了head的头顶,所以将head=L,将head重新指回头部) L=temp; //取出下一个节点,如果不为NULL,就继续将L插到head的顶部如此循环。。 } return head; }
好了就是这些。