本文主要是介绍链表的逆转(使用栈和动态数组),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
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; //返回弹出的动态数组}
}
这篇关于链表的逆转(使用栈和动态数组)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!