链表逆序操作:
步骤如下:
- 首先先记住当前节点的下一个节点的位置,因为如果将该节点插入至新节点,需要改变它的next指向
- 然后,将当前节点的next指向newhead指向的节点
- 最后,将newhead指向当前节点,并将head节点遍历至下一个节点。
//链表逆序操作
ListNode* reverseList(ListNode* head)
{
ListNode* newHead = NULL;
while (head)
{
ListNode* next = head->next;
head->next = newHead;
newHead = head;
head = next;
}
return newHead;
}