反转链表

题目描述

输入一个链表,反转链表后,输出链表的所有元素。

可以设置三个指针,分别是pre,node,after,然后通过循环不断的反转指针,最终实现整个链表的反转。

public class Solution {
    public ListNode ReverseList(ListNode head) {
         if(head==null||head.next==null){
            return head;
        }
        ListNode node = head;
        ListNode after=head.next;
        ListNode pre=null;
        while(after!=null){
            node.next=pre;
            pre=node;
            node=after;
            after=after.next;
            node.next=pre;
        }
        return node;
    }
}
posted @ 2016-02-11 09:41  黄大仙爱编程  阅读(88)  评论(0编辑  收藏  举报