输入一个链表,按链表值从尾到头的顺序返回一个ArrayList
/**
* 1->2->3->4 栈先入后出
* 4 3 2 1
*
*/
package com.java.offer;
import java.util.ArrayList;
import java.util.Stack;
class ListNode{
int val;
ListNode next=null;
public ListNode(int val){
this.val=val;
}
}
//输入一个链表,按链表值从尾到头的顺序返回一个ArrayList
/**
* 1->2->3->4 栈先入后出
* 4 3 2 1
*
*/
public class Solution03 {
public static ArrayList<Integer> printListFromTailtoHead(ListNode listNode){
Stack<Integer> stack=new Stack<Integer>();
ArrayList<Integer> list=new ArrayList<>();
while(listNode.next!=null){
stack.push(listNode.val);
}
while(!stack.isEmpty()){
list.add(stack.pop());
}
return list;
}
}