从尾到头打印链表
输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。
算法思想
很简单,遍历链表,将遍历的每个节点放入一个栈中,直到遍历整个链表,然后将栈中的节点的值依次出栈放入一个数组即可。
Stack<ListNode> s=new Stack<>();
while(head!=null){
s.push(head);
head=head.next;
}
int len=s.size();
int[] nums=new int[len];
for(int i=0;i<len;i++) {
nums[i]=s.pop().val;
}
return nums;
}