链表的逆转(使用栈和动态数组)

来源:互联网 发布:订货软件 编辑:程序博客网 时间:2024/05/29 02:09
import java.util.Stack;import java.util.ArrayList;public class Solution3 {    public static class ListNode {        int val;        ListNode next = null;        ListNode(int val) {            this.val = val;        }    }    //将元素放入栈中,弹出的元素放入动态数组中    public static 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.isEmpty()){   //判断栈是否为空的方法            list.add(stack.pop());        }        return list;  //返回弹出的动态数组    }}
0 0