链表的头插法与尾插

链表是数据结构的一种,多个节点指向形成一个连接

在向链表中添加数据时存在两种插入方法:

头插法:

每插入一个节点,都会代替原来的头部的节点,然后新的头部节点的指针指向原来的头部节点


//java代码简单模拟

public class Node {

    private Object data;
    private Node next;//模仿指针

    public Node(Object data, Node node) {
        this.data = data;
        this.next= node;
    }

    public static void main(String[] args) {

        Node head = new Node("第一个数据", null);//由于是第一次插入,所以指针指向是null
        head = new Node("第二个数据",head);

    }
}

尾插法:
相较于头插法,尾插法效率会低很多,在每一次添加时都必须遍历链表,直至尾部

//java代码简单模拟
public class Node {

    private Object data;
    private Node next;//模仿指针

    public Node(Object data, Node node) {
        this.data = data;
        this.next = node;
    }

    public static void main(String[] args) {

        Node node = new Node("第二个元素", null);
        
        while (node.next == null){//遍历每一个节点,直到节点中的指针指向null
            Node head = new Node("第一个数据", node);//由于是第一次插入,所以指针指向是null
        }

    }
}

原文地址:http://www.cnblogs.com/xuzhidong/p/16852982.html

发表评论

您的电子邮箱地址不会被公开。