输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。
示例 1:
输入:head = [1,3,2]
输出:[2,3,1]
限制:
0 <= 链表长度 <= 10000
分析:
// 231
// 2
// 32
// 132
public int[] reversePrint(ListNode head) {
if (head == null) {
return new int[0];
}
int i = 1;
int[] newi = new int[i];
newi[i - 1] = head.val;
int[] old;
while ((head = head.next) != null) {
i++;
old = newi;
newi = new int[i];
newi[0] = head.val;
for (int j = 0; j < old.length; j++) {
newi[j + 1] = old[j];
}
}
return newi;
}
public class ListNode {
int val;
ListNode next;
ListNode(int x) {
val = x;
}
}