题目描述
输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
public class Solution {
ArrayList<Integer> arrayList = new ArrayList<>();
//这里运用了递归的思想
//首先判断 后面是否有next节点 如果有那么进入这个方法的递归
//最后直到该节点没有next节点
//进行我们的添加操作
//然后 递归回到上一层 执行为完成的添加工作
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
//如果节点为空 返回 空数组
if (listNode==null){
return arrayList;
}
if(listNode.next!=null){
arrayList= printListFromTailToHead(listNode.next);
arrayList.add(listNode.val);
}else {
arrayList.add(listNode.val);
}
return arrayList;
}
}
网友评论