/** \* public class ListNode { \* int val; \* ListNode next = null; * \* ListNode(int val) { \* this.val = val; \* } \* } * */ /* 思路:采用递归并利用调用Listnode的next获取下一个值,将值递归传递下去 而后利用val获取值,将值传递到数组当中,达到最深层后一层层往外输出内容 也就是实现了从尾到头返回arraylist */ import java.util.ArrayList; public class Solution { ArrayList<Integer> arr=new ArrayList<Integer>(); public ArrayList<Integer> printListFromTailToHead(ListNode listNode) { if(listNode!=null) { this.printListFromTailToHead(listNode.next); arr.add(listNode.val); } return arr; } }