剑指Offer06从头到尾打印链表java题解

代码

class Solution {
    public int[] reversePrint(ListNode head) {
    	//存放遍历链表得到的数的数组
        int[] result=new int[10001];
        int i=10000;
        while(head!=null){
            result[i--]=head.val;
            head=head.next;
        }
		//要输出的数组
        int[] res=new int[10000-i];
        System.arraycopy(result, i+1, res, 0, 10000-i);
		
        return res;
    }
}

结果

在这里插入图片描述

总结

看了官方题解,是先用栈存放链表元素,因为栈具有先进后出的特点。

你可能感兴趣的:(剑指Offer,leetcode,链表,数据结构,java,单链表)