题目描述
输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
@Test public void test_print_list_from_tail_to_head() { LinkedList<Integer> src = new LinkedList<>(); src.add(1); src.add(2); src.add(3); src.add(4); ArrayList<Integer> des = new ArrayList<>(); des.add(4); des.add(3); des.add(2); des.add(1); assertEquals(des,new PrintListFromTail().printListFromTailToHead(src)); } import java.util.ArrayList; import java.util.LinkedList; import java.util.Stack; /** * Created by 1024 on 2019/01/02. **/ public class PrintListFromTail { public ArrayList<Integer> printListFromTailToHead(LinkedList<Integer> src) { Stack<Integer> stack = new Stack(); for (int i = 0; i < src.size(); i++) { stack.push(src.get(i)); } ArrayList<Integer> des = new ArrayList<>(); while (!stack.empty()) { des.add(stack.pop()); } return des; } }