题解 | #反转链表#
反转链表
http://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca
/* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ public class Solution { public ListNode ReverseList(ListNode listNode) { //传入的链表 ListNode cur = listNode; //下个节点 ListNode next = null; while(cur != null){ //获取下个节点 ListNode curNext = cur.next; //第一次循环,将第一个节点指向下个节点的引用置为空 //后续循环,将当前节点指向下个节点的引用改为指向上次循环获取到的节点(当前节点的上个节点)的引用 cur.next = next; //每次循环获取到的节点(引用指向上个节点的当前节点) next = cur; //取下个节点进行循环判断 cur = curNext; } return next; } }