为双链表添加节点方法?

时间:2011-12-08 15:38:11

标签: java linked-list doubly-linked-list

我目前有这个,但我想把我的列表变成一个双链表,不知道怎么办。

public void addDNode(DNode v)
{
    if(header == tail)
    {

        header = v;
    }
    else
    {
        DNode current = header;
        while (current.nextNode() != null)
        {
            current = current.nextNode();
        }
        current.setNext(v); 
    }
}

2 个答案:

答案 0 :(得分:2)

public void addDNode(DNode v) {
    if (header == null) {  // means list is empty, so add first element
        if (tail != null)  
            throw new AssertionError(); // if head points to null then tail should too

        header = v;
        tail = header;  // first element so (head == tail)
    } else {
        tail.setNext(v);
        v.setPrev(tail);
        v.setNext(null);
        tail = v;
    }
}

答案 1 :(得分:1)

以下是双重链表:doubly linked list article 这是在Java中实现它的一种方法:doubly linked list example

在互联网上搜索,尝试实施它,然后如果你有一些问题,请在这里询问;)