链表

数组和链表的对比

数组和链表的对比.png

前面提到的动态数组,栈和队列,底层依托的都是静态的数组

这节涉及到的链表才是真正的动态数据结构

数据存储在节点中

节点与节点之间由指针连接

优点

真正的动态,需要多少数据,就生成多少节点,将他们挂接起来即可

缺点

失去了随机访问的能力

链表的基本实现

public class LinkedList {

    private class Node{
        public E e;
        public Node next;

        public Node(E e, Node next){
            this.e = e;
            this.next = next;
        }

        public Node(E e){
            this(e, null);
        }

        public Node(){
            this(null, null);
        }

        @Override
        public String toString(){
            return e.toString();
        }
    }

}

你可能感兴趣的:(链表)