题目
定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。
示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL
1
2
2
限制:
0 <= 节点个数 <= 5000
注意 :本题与主站 206 题相同:https://leetcode-cn.com/problems/reverse-linked-list/
题解
java
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;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15