zoukankan      html  css  js  c++  java
  • 剑指offer

    题目描述:

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

    结点定义:

    class ListNode {
        int val;
        ListNode next = null;
    
        ListNode(int val) {
            this.val = val;
        }
    }

    code:

    1. 使用头插法:

    import java.util.ArrayList;
    
    public class Solution {
        public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
            //如果链表为空,返回空list
            if (null == listNode) {
                return new ArrayList<>();
            }
            //定义一个新链表的头节点
            ListNode head = new ListNode(0);
            //遍历链表
            while (null != listNode) {
                //定义新节点
                ListNode temp = new ListNode(listNode.val);
                //新节点的next指向head的next
                temp.next = head.next;
                //head的next指向新节点
                head.next = temp;
                //原链表指向下一个
                listNode = listNode.next;
            }
            //头节点指向下一个
            head = head.next;
            //定义list作为返回值
            ArrayList<Integer> list = new ArrayList<>();
            //遍历链表
            while (null != head) {
                //list添加当前节点的值
                list.add(head.val);
                //链表指向下一个
                head = head.next;
            }
            //返回list
            return list;
        }
    }

    2. 使用list中方法:

    import java.util.ArrayList;
    
    public class Solution {
        public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
            //如果链表为空,返回空list
            if (null == listNode) {
                return new ArrayList<>();
            }
            ArrayList<Integer> list = new ArrayList<>();
            //遍历链表
            while (null != listNode) {
                //list第一个位置添加当前节点的值
                list.add(0, listNode.val);
                //链表指向下一个
                listNode = listNode.next;
            }
            //返回list
            return list;
        }
    }
  • 相关阅读:
    QT中文报错问题
    自动获取UILabel高度
    vi编辑器的使用
    命令例子
    WPF中textBlock 变色功能
    php 删除目录及子文件
    jquery autocomplete插件
    js日历选择控件
    centeros bash: ifconfig: command not found
    php 文件日志类
  • 原文地址:https://www.cnblogs.com/s-star/p/12483175.html
Copyright © 2011-2022 走看看