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


    从尾到头打印链表

    题目描述

    输入一个链表,按链表从尾到头的顺序返回一个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);
            }
        }
    }
    

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

  • 相关阅读:
    KooTeam
    nopCommerce架构分析系列(一)nopCommerce简介
    NServiceBus最流行的开源企业服务总线 for .Net资源学习篇
    How to become a software architect?
    DotNetMQ: A Complete Message Queue System for .NET
    CSLA.Net专注电子商务 – Focus on eCommerce
    .net framework从1.0说到4.0
    ERP/SCM
    泛型接口的协变和逆变
    HTML5学习
  • 原文地址:https://www.cnblogs.com/kaesar/p/15449230.html
Copyright © 2020-2023  润新知