【栈】 offer06 从尾到头打印链表

    技术2025-07-26  11

    题目

    输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回) 输入:head = [1,3,2] 输出:[2,3,1]

    代码

    public int[] reversePrint(ListNode head) { Deque<Integer> stack = new LinkedList<>(); //记着头结点不能随意移动,要用其他变量代表头结点 ListNode cur = head; while(cur!=null){ stack.push(cur.val); cur = cur.next; } //用常量存储栈的容量,不然随着元素的弹出栈的容量会变 int size = stack.size(); int []res = new int[size]; for(int i = 0;i<size;i++){ res[i] = stack.pop(); } return res; }
    Processed: 0.013, SQL: 9