LeetCode206_反转链表I
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。
俩种方法:
1、递归
public class LeetCode_206 {
public ListNode reverseList(ListNode head) {
//递归结束条件
if (head == null || head.next == null) return head;
ListNode newNode = reverseList(head.next);
head.next.next = head;
head.next = null;
return newNode;
}
}
2、迭代
public class LeetCode_206 {
public ListNode reverseList(ListNode head) {
ListNode newHead = null;
//逐个反转
if (head != null){
ListNode temp = head.next;
head.next = newHead;
newHead = head;
head = temp;
}
return newHead;
}
}