题解 | #反转链表#
反转链表
http://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca
反转链表这道题比较简单,可以把链表拆开来看,一个链一个链的进行操作,使用迭代的方法,这样就可以通过while循环来解决问题。
public static ListNode renus(LitNode head){ //首先解决第一个节点的问题,定义当前节点, //当前节点的前一个节点和当前节点的下一个节点 ListNode pre = null; ListNode cur = head; ListNode next = null; //当确定每个节点的初始值的时候开始迭代 while(cur!=null){ next = cur.next; //首先取得当前节点的下一个节点 cur.next = pre; //之后将当前节点的next指向上一个节点 pre = cur; // 将前一个节点设置为当前节点 cur = next; //将下一个节点设置为当前节点 } return pre; }