美文网首页
JZ-003-从尾到头打印链表

JZ-003-从尾到头打印链表

作者: 醉舞经阁半卷书 | 来源:发表于2021-10-23 18:38 被阅读0次

从尾到头打印链表

题目描述

输入一个链表,按链表从尾到头的顺序返回一个ArrayList。

题目链接: 从尾到头打印链表

代码

import java.util.ArrayList;

/**
 * 标题:
 * 题目描述
 * 
 * <p>
 * 题目链接
 * 
 */
public class Jz03 {

    /**
     * 非递归
     *
     * @param listNode
     * @return
     */
    public static ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
        ArrayList<Integer> res = new ArrayList<>();
        for (; listNode != null; listNode = listNode.next) {
            res.add(0, listNode.val);
        }
        return res;
    }

    /**
     * 递归
     *
     * @param listNode
     * @return
     */
    public static ArrayList<Integer> printListFromTailToHead1(ListNode listNode) {
        ArrayList<Integer> res = new ArrayList<Integer>();
        if (listNode != null) {
            res.addAll(printListFromTailToHead1(listNode.next));
            res.add(listNode.val);
        }
        return res;
    }

    public static void main(String[] args) {
        ListNode node = new ListNode(67);
        ListNode node1 = new ListNode(0);
        ListNode node2 = new ListNode(24);
        ListNode node3 = new ListNode(58);
        node.next = node1;
        node1.next = node2;
        node2.next = node3;

        // 非递归
        System.out.println("非递归~~~");
        ArrayList<Integer> res = printListFromTailToHead(node);
        for (int val : res) {
            System.out.println(val);
        }

        // 递归
        System.out.println("递归~~~");
        ArrayList<Integer> res1 = printListFromTailToHead1(node);
        for (int val : res1) {
            System.out.println(val);
        }
    }
}

【每日寄语】 方向对了,就不怕路远。坚持不仅是一种品质,也是一种信念。

相关文章

  • JZ-003-从尾到头打印链表

    从尾到头打印链表 题目描述 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。题目链接: 从尾到头打印...

  • 2.3.3 链表

    面试题6:从尾到头打印链表 输入一个链表,从尾到头打印链表每个节点的值。

  • 06:从尾到头打印链表

    题目06:从尾到头打印链表 输入一个链表,从尾到头打印链表每个节点的值。 思路 一. 栈 从头遍历链表,先访问的后...

  • 《剑指offer》— JavaScript(3)从尾到头打印链表

    从尾到头打印链表 题目描述 输入一个链表,从尾到头打印链表每个节点的值。 实现代码 相关知识 链表是一种物理存储单...

  • <<剑指offer>>--javascript(3)-从尾到头打

    从尾到头打印链表 题目描述 输入一个链表,从尾到头打印链表每个节点的值 代码如下 解题思路 链表是一种物理存储单元...

  • 从尾到头打印链表

    从尾到头打印链表 题目描述 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 分析 listNode...

  • 从尾到头打印链表

    《剑指offer》面试题6:从尾到头打印链表 题目:输入一个链表的头节点,从尾到头反过来打印出每个节点的值。(链表...

  • 《剑指Offer》链表考点题解

    题目链接:从尾到头打印链表 题目简述: 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 题目思路 ...

  • 剑指Offer -- 从尾到头打印链表(C++)

    题目描述 输入一个链表,从尾到头打印链表每个节点的值。 方法1:注意是从尾到头进行打印,可利用vector的头插法...

  • Day3 剑指offer:逆序链表

    输入一个链表,从尾到头打印链表每个节点的值。

网友评论

      本文标题:JZ-003-从尾到头打印链表

      本文链接:https://www.haomeiwen.com/subject/jzqlaltx.html