题目描述:输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。
思路:首先统计链表中的节点个数,创建一个大小等于节点个数的数组,再次遍历链表并将数据倒着存入数组。
public int[] reversePrint(ListNode head) {
int count=0;
ListNode cur=head;
while(cur!=null){
count++;
cur=cur.next;
}
int[] a=new int[count];
for(int i=count-1;i>=0;i--){
a[i]=head.val;
head=head.next;
}
return a;
}
提交结果: