从尾到头打印链表

输入一个链表,从尾到头打印链表每个节点的值。

方法一:借助堆栈的“后进先出”实现

 1 /**
 2 *    public class ListNode {
 3 *        int val;
 4 *        ListNode next = null;
 5 *
 6 *        ListNode(int val) {
 7 *            this.val = val;
 8 *        }
 9 *    }
10 *
11 */
12 import java.util.ArrayList;
13 import java.util.Stack;
14 public class Solution {
15     public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
16         Stack<Integer> stack=new Stack<Integer>();
17         while(listNode!=null){
18             stack.push(listNode.val);
19             listNode=listNode.next;     
20         }
21         
22         ArrayList<Integer> list=new ArrayList<Integer>();
23         while(!stack.isEmpty()){
24             list.add(stack.pop());
25         }
26         return list;
27     }
28 }
原文地址:https://www.cnblogs.com/LoganChen/p/6393263.html