public ArrayList<Integer> printListFromTailToHead(ListNode listNode){
Stack<Integer> stack = new Stack<>();while(listNode != null){
stack.add(listNode.val);
listNode = listNode.next;}
ArrayList<Integer> ret = new ArrayList<>();while(!stack.isEmpty())
ret.add(stack.pop());return ret;}
使用遞歸
public ArrayList<Integer> printListFromTailToHead(ListNode listNode){
ArrayList<Integer> ret = new ArrayList<>();if(listNode != null){
ret.addAll(printListFromTailToHead(listNode.next));
ret.add(listNode.val);}return ret;}
拓展
使用 Collections.reverse()
public ArrayList<Integer> printListFromTailToHead(ListNode listNode){
ArrayList<Integer> ret = new ArrayList<>();while(listNode != null){
ret.add(listNode.val);
listNode = listNode.next;}
Collections.reverse(ret);return ret;}