题解 | #从尾到头打印链表# 使用栈逆序输出单链表
从尾到头打印链表
https://www.nowcoder.com/practice/d0267f7f55b3412ba93bd35cfa8e8035
import java.util.*; /** * public class ListNode { * int val; * ListNode next = null; * * ListNode(int val) { * this.val = val; * } * } * */ import java.util.ArrayList; public class Solution { public ArrayList<Integer> printListFromTailToHead(ListNode listNode) { ArrayList<Integer> res = new ArrayList<Integer>(); Stack<Integer> s = new Stack<Integer>(); // 正序输出链表到栈中 while(listNode != null) { s.push(listNode.val); listNode = listNode.next; } // 输出栈中元素到数组中 while(!s.isEmpty()) { res.add(s.pop()); } return res; } }