zoukankan      html  css  js  c++  java
  • 插入和删除节点

    插入和删除节点

    相对于数组,链表的特点:

    1.可以有无限多个节点,长度不限制

    2.无论插入还是删除,并不需要挪动位置

    建立一个节点对象,里面包含id,name,和下一个节点

    public class Node {
        public int id;
        public String name;
        public Node next;
        
        public Node(int id,String name){
            this.id=id;
            this.name=name;
        }
    }

    初始化:

            Node n1=new Node(101, "熊大");
            Node n2=new Node(102, "熊二");
            Node n3=new Node(103, "熊三");
            Node n4=new Node(104, "熊四");
            
            n1.next=n2;
            n2.next=n3;
            n3.next=n4;
            n4.next=null;

    新建一个节点n5到链表末尾

            Node n5=new Node(105, "熊五");
            Node tail=n1;
            while(tail.next!=null){
                tail=tail.next;
            }
            tail.next=n5;

    新建一个节点n6到头节点之后

            Node head=n1;
            Node n6=new Node(106, "熊六");
            n6.next=head.next;
            head.next=n6;

    新建一个节点n7到指定位置,id为103之后

            Node n7=new Node(107, "熊七");
            Node node1=n1;
            while(node1.id!=103){
                node1=node1.next;
            }
            n7.next=node1.next;
            node1.next=n7;

    删除指定节点,id为104的节点

            Node node2=n1;
            while(node2.next.id!=104){
                node2=node2.next;
            }
            node2.next=node2.next.next;
  • 相关阅读:
    无有和无穷
    算法设计 熄灯问题
    WPF 路由事件总结
    C# params关键字
    WPF 布局总结
    C#结构体和类的区别
    C#装箱和拆箱(值类型和引用类型之间的转换)
    OpenGL中平移、旋转、缩放矩阵堆栈操作
    OpenGL图元的颜色属性
    OpenGL基础图形的绘制
  • 原文地址:https://www.cnblogs.com/xtuxiongda/p/8732644.html
Copyright © 2011-2022 走看看