题目描述
输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
思路:看到说要从尾到头,很容易想到栈这种数据结构。
代码:
import java.util.ArrayList;
import java.util.Stack;
public class Solution {
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
ArrayList<Integer> list = new ArrayList();
Stack<ListNode> stack = new Stack();
if(listNode==null){
return list;
}
while(listNode!=null){
stack.push(listNode);
listNode=listNode.next;
}
while(!stack.isEmpty()){
list.add(stack.pop().val);
}
return list;
}
}