题目:
解法:(递归法)
public class Code {
/**
* 头节点
*/
public static ListNode head = new ListNode(-1);
public ListNode reverseList(ListNode pre) {
ListNode listnode = this.reverseImpl(pre);
if (listnode != null){
listnode.next = null;
}
return head.next;
}
public ListNode reverseImpl(ListNode pre){
if (pre == null) {
return null;
}
ListNode post = reverseImpl(pre.next);
// 设置头节点
if (post == null){
head.next = pre;
}else {
post.next = pre;
}
return pre;
}
}