反转链表Java

反转链表

public class ListNode {
    int val;
    ListNode next;
    ListNode(int val){
        this.val=val;
    }
    //反转链表
    public ListNode reverseList(ListNode list){
        ListNode pre = null;
        ListNode cur = list;
        while(cur!=null){
            ListNode curnext = cur.next;
            cur.next=pre;
            pre=cur;
            cur=curnext;
        }
        return pre;
    }

    public static void main(String[] args) {
        ListNode listNode=new ListNode(0);
        ListNode temp0=listNode;
        for (int i = 0; i <10 ; i++) {
            temp0.next=new ListNode(i);
            temp0=temp0.next;
        }
        listNode=listNode.reverseList(listNode);
        ListNode temp=listNode;
        while(temp!=null){
            System.out.print(temp.val);
            temp=temp.next;
        }
    }
}

输出:98765432100


版权声明:本文为weixin_46356409原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。