题目描述
输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
解题思路
由于需要从尾到头打印,可以栈后进先出(LIFO)来解决这道题。
代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
import java.util.ArrayList; import java.util.Stack; public class { public ArrayList<Integer> printListFromTailToHead(ListNode listNode) { ArrayList<Integer> result = new ArrayList<>(); Stack<Integer> stack = new Stack<>(); while(listNode != null){ stack.add(listNode.val); listNode = listNode.next; } while(!stack.isEmpty()){ result.add(stack.pop()); } return result; } }
|
近期评论