从尾到头打印链表

题目描述

输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
/**
*    public class ListNode {
*        int val;
*        ListNode next = null;
*
*        ListNode(int val) {
*            this.val = val;
*        }
*    }
*
*/
import java.util.ArrayList;
public class Solution {
    ArrayList<Integer> ser=new ArrayList<Integer>();
    ListNode temp;
    public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
         ListNode prev=null;
         ListNode curr=listNode;
        while(curr!=null){//先将链表反转
            temp=curr.next;
            curr.next=prev;
            prev=curr;
            curr=temp;
            
        }
        while(prev!=null){//放进ArrayList里面
            ser.add(prev.val);
            prev=prev.next;
        }
        return ser;
}
}

 

posted @ 2019-06-30 17:17  ZJfor  阅读(91)  评论(0编辑  收藏  举报