• Java数据结构


    class LoopNode {
        // 节点内容
        private int data;
        // 下一个节点
        private LoopNode next;
    
        public LoopNode(int value) {
            this.data = value;
            // 将该节点的下一个节点指向自己
            this.next = this;
        }
    
        // 获取下一个节点
        public LoopNode next() {
            return this.next;
        }
    
        // 获取节点中的数据
        public int getData() {
            return this.data;
        }
    
        // 删除下一个节点
        public void removeNext() {
            // 先取出下下一个节点
            LoopNode nextNextNode = next.next;
            // 把下下一个节点设置为当前节点的下一个节点
            this.next = nextNextNode;
        }
    
        // 对于循环链表来说,单链表的插入操作就是添加节点的操作,但添加时每次都要从最后一个节点往后添加
        // 插入一个节点作为当前节点的下一个节点
        public void insert(LoopNode node) {
            // 取出下一个节点,作为下下一个节点
            LoopNode nextNode = next;
            // 把新节点作为当前节点的下一个节点
            this.next = node;
            // 把下下一个节点设置为新节点的下一个节点
            node.next = nextNode;
        }
    }
    
    public class Main {
        public static void main(String[] args) {
            LoopNode ln1 = new LoopNode(1);
            LoopNode ln2 = new LoopNode(2);
            LoopNode ln3 = new LoopNode(3);
    
            // 增加节点
            ln1.insert(ln2);
            ln2.insert(ln3);
    
            System.out.println(ln1.next().getData());
            System.out.println(ln2.next().getData());
            System.out.println(ln3.next().getData());
        }
    }
  • 相关阅读:
    05.迪米特原则 (LOD)
    04.接口隔离原则 (ISP)
    03.依赖倒置原则 (DIP)
    02.里氏替换原则 (LSP)
    01.单一职责原则 (SRP)
    Flutter点击事件的穿透,父元素点击事件覆盖了子元素点击的问题
    flutter dart语法判断 0/0==Nan 1/0==Infinity的问题
    vue项目引入三方字体
    vue echart图表打包后 图片不显示
    vue设置页面的高度100%
  • 原文地址:https://www.cnblogs.com/GjqDream/p/11595908.html
Copyright © 2020-2023  润新知