题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。
代码实现:
尾插法
/*
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}*/
public class Solution {
public ListNode ReverseList(ListNode head) {
if(head == null) {
return null;
}
ListNode node = head.next;
ListNode tail = head;
head.next = null;
//尾插法
while(node != null) {
ListNode tmp = node.next;
node.next = tail;
tail = node;
node = tmp;
}
return tail;
}
}