/*
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}*/
//一、迭代
public class Solution {
public ListNode ReverseList(ListNode head) {
ListNode l = null;
ListNode p = head;
while (p != null) {
ListNode r = p.next;
p.next = l;
l = p;
p = r;
}
return l;
}
}
//二、递归
public class Solution {
public ListNode ReverseList(ListNode head) {
if (head == null || head.next == null) {
return head;
}
ListNode p = ReverseList(head.next);
head.next.next = head;
head.next = null;
return p;
}
}