zoukankan      html  css  js  c++  java
  • 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);
            }
        }
    }
    

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

  • 相关阅读:
    c# 子窗体打开或者切换就最大化
    TreeView失去焦点时亮显选中状态
    解决 RecursionError: maximum recursion depth exceeded
    CentOS7安装jdk1.8
    CentOS7安装mysql5.7
    CentOS7安装redis3.2.3
    CentOS7安装nginx1.8
    centos7设置redis开机自启动
    Linux下执行sh脚本报错:$' ': command not found
    Linux下使用unhide查看隐藏文件
  • 原文地址:https://www.cnblogs.com/kaesar/p/15449230.html
Copyright © 2011-2022 走看看