题目描述
输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
Java代码
package String;
import java.util.Stack;
import java.util.ArrayList;
class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}
public class Solution {
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
Stack<Integer> stack = new Stack<>();
while(listNode!=null){
stack.push(listNode.val);
listNode=listNode.next;
}
ArrayList<Integer> list = new ArrayList<>();
while(!stack.empty()){
list.add(stack.pop());
}
return list;
}
public static void main(String[] args){
ListNode l1=new ListNode(1);
ListNode l2=new ListNode(2);
ListNode l3=new ListNode(3);
l1.next=l2;
l2.next=l3;
ArrayList<Integer> list = new ArrayList<>();
Solution s=new Solution();
list=s.printListFromTailToHead(l1);
System.out.println(list);
}
}