剑指offer-第三题
import java.util.ArrayList; import java.util.Stack; class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } } /** * 目标:输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 * 思路:用stack可以把顺序翻转,然后把stack放到arrayList即可 * tip:当看到翻转等顺序相反的题目可以尝试使用stack * 代码: */ public class Solution3 { public ArrayList<Integer> printListFromTailToHead(ListNode listNode) { ArrayList<Integer> arrayList = new ArrayList<>(); if (listNode==null){ return arrayList; } Stack<Integer> stack = new Stack<>(); while (listNode!=null){ stack.push(listNode.val); listNode = listNode.next; } while (!stack.empty()){ arrayList.add(stack.pop()); } return arrayList; } }
Linux等环境软件安装