算法剑指 Offer 06.从头到尾打印链表

Posted Rose J

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法剑指 Offer 06.从头到尾打印链表相关的知识,希望对你有一定的参考价值。

1.题目

输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。

示例 1:

输入:head = [1,3,2]
输出:[2,3,1]

限制:

0 <= 链表长度 <= 10000

2.思路

先把链表的节点压到一个栈中,再把栈中的对应节点元素输出到数组中

3.答案

/**
 * Definition for singly-linked list.
 * public class ListNode 
 *     int val;
 *     ListNode next;
 *     ListNode(int x)  val = x; 
 * 
 */
class Solution 
    public int[] reversePrint(ListNode head) 
            Stack<ListNode> stack = new Stack<>();
            ListNode temp = head;
            while (temp != null) 
                stack.push(temp);
                temp = temp.next;
            
            int size = stack.size();
            int[] newStr = new int[size];
            for (int i = 0; i < size; i++) 
                newStr[i] = stack.pop().val;
            
            return newStr;
        

以上是关于算法剑指 Offer 06.从头到尾打印链表的主要内容,如果未能解决你的问题,请参考以下文章

算法剑指 Offer 06.从头到尾打印链表

算法剑指 Offer 06.从头到尾打印链表

java刷题--剑指offer06 从头到尾打印链表

剑指offer中经典的算法题之从头到尾打印链表

⭐剑指Offer_06 从头到尾打印链表两种方法任你挑选⭐

从头到尾打印链表(剑指offer_6)