2023-09-24
原文作者:moxiaolin 原文地址: https://blog.csdn.net/qq_37909508/article/details/89361616

题目描述

输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。

首先从listNode中取出数据,然后存放到栈中,由于栈是先进后出,然后在从栈中一个个取出来就好了:

    import java.util.ArrayList;
    import java.util.Stack;
    public class Solution {
        public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
            Stack<Integer> stack=new Stack<>();
    		ArrayList<Integer> list=new ArrayList();
            while(listNode!=null){
                stack.push(listNode.val);
                listNode=listNode.next;
            }
    		int stackSize=stack.size();
    		for(int i=0;i<stackSize;i++) {
    			list.add(stack.pop());
    		}
    		return list;
        }
    }
阅读全文