了解线性链表

Upv*_*ote 1 recursion data-structures

我在理解线性链表数据结构时遇到了一些问题.这是我定义列表元素的方式:

class Node{
    Object data;
    Node link;

    public Node(Object pData, Node pLink){
        this.data = pData;
        this.link = pLink;
    }
}
Run Code Online (Sandbox Code Playgroud)

为了简单起见,我们说列表是链接节点,因此我们不需要定义类列表(递归原理).

我的问题是我很难理解节点是如何连接的,更确切地说是连接它们时节点的顺序.

Node n1 = new Node(new Integer(2), null);
Node n2 = new Node(new Integer(1), n1);
Run Code Online (Sandbox Code Playgroud)

什么是链接?它是前一个还是下一个元素?有什么其他建议可以帮助我理解这个数据结构吗?

Pet*_*Mmm 5

也许这张图可以帮助你理解.

替代文字

(请注意,箭头是引用而不是Java的指针)

"列表"将是对第一个节点的引用.