输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。
示例 1:
输入:head = [1,3,2]
输出:[2,3,1]
限制:
0 <= 链表长度 <= 10000
class Solution {
public int[] reversePrint(ListNode head) {
Stack<Integer> stack=new Stack<Integer>();
int length=0;
while(head!=null)
{
stack.push(head.val);
head=head.next;
length++;
}
int []array=new int[length];
for(int i=0;i<length;i++)
{
array[i]=stack.pop();
}
return array;
}
}
思路
运用栈先进后出,push进,pop出