题目描述
输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
解题思路:
原题中给出了一个名为ListNode的内置类,本来想使用Collections内置的reverse方法,顺序获取链表的值后反转,提交后发现不能使用,因此另外定义了一个ArrayList进行反转。
public class ListNodeReverse {
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
ArrayList<Integer> list = new ArrayList<>();
while (listNode != null) {
list.add(listNode.val);
listNode = listNode.next;
}
ArrayList<Integer> result = new ArrayList<>();
for (int i = list.size() - 1;i >= 0 ; i--) {
result.add(list.get(i));
}
return result;
}
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}
}