从尾到头打印列表

    科技2025-08-15  4

    剑指Offer之从尾到头打印列表 问题描述: 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 问题分析: 链表是从头到尾开始读取的,可以在ArrayList中的0位置每次插入读取的数字。

    /** * public class ListNode { * int val; * ListNode next = null; * * ListNode(int val) { * this.val = val; * } * } * */ import java.util.ArrayList; public class Solution { public ArrayList<Integer> printListFromTailToHead(ListNode listNode) { ArrayList<Integer> list = new ArrayList<>(); ListNode tmp = listNode; while(tmp != null){ list.add(0,tmp.val); tmp = tmp.next; } return list; } }

    递归想法

    import java.util.ArrayList; public class Solution { ArrayList<Integer> list = new ArrayList<>(); public ArrayList<Integer> printListFromTailToHead(ListNode listNode) { if(listNode != null){//注意这里是listNode,之前我自己用listNode.next出现错误 printListFromTailToHead(listNode.next); list.add(listNode.val); } return list; } }
    Processed: 0.009, SQL: 8