剑指 Offer 24. 反转链表
题目
定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。
示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL
限制:
0 <= 节点个数 <= 5000
注意:本题与主站206题相同
题解
public ListNode reverseList(ListNode head) {
// 头结点
ListNode node = new ListNode(0);
while (head != null) {
// 新节点
ListNode n = new ListNode(head.val);
// 新节点后继节点指向头结点后继
n.next = node.next;
// 头结点后继指向新节点
node.next = n;
head = head.next;
}
return node.next;
}