• 链表的实现原理


    链表的实现原理

      存储结构:

        data为链表存储的数据,node则是向下一个元素的对象,若node为null,则表示该元素为该个链表的最后一个元素

        

     java实现

     

    package com.study;
    
    /**
     * 链表实体
     * 
     * @author qiutianyou
     *
     */
    class Linked {
        public int count;//统计新增次数
        public Node root;// 根节点
        /**
         * 新增
         * @param data
         */
        public void add(String data) {
            Node newNode = new Node(data);//生成新节点
            if (this.root == null) {//如果根节点不存在
                this.root = newNode;
            } else {
                this.root.addNode(newNode);
            }
            count++;
        }
        /**
         * 输出
         */
        public void print() {
            if (this.root != null) {
                this.root.printNode();
            }
        }
        /**
         * 链表的长度
         * @return 
         */
        public int size() {
            return count;
        }
    
        /**
         * 私有的节点实体类
         * 
         * @author qiutianyou
         *
         */
        private class Node {
            String data;
            Node next;
    
            public Node(String data) {
                this.data = data;
            }
    
            public void addNode(Node newNode) {
                if (this.next == null) {
                    this.next = newNode;
                } else {
                    this.next.addNode(newNode);
                }
            }
            /**
             * 递归调用printNode,输出;链表存储的data
             */
            public void printNode() {
                System.out.println(this.data);//第一次 this=root,第二次调用时 this=root.next,第三次调用时 this=root.next.next
                if (this.next != null) {
                    this.next.printNode();
                }
            }
        }
    
    }

     

  • 相关阅读:
    POJ2115解题报告【拓展欧几里得模板题】
    Linux安装jdk快速流程
    SpringBoot+Vue项目多文件上传同时上传其他参数
    Maven
    浏览器常用快捷键
    IDEA从GitHub仓库拉取代码
    Address already in use: bind
    Vue集成echarts插件
    致自己
    Flask_FileUpload
  • 原文地址:https://www.cnblogs.com/qiutianyou/p/5824237.html
Copyright © 2020-2023  润新知