我正在编写一些代码,我需要将一个节点添加到双向链表中。这是我到目前为止的代码:在双向链表中添加一个节点
Node tempNext = cursor.getNext();
temp = new Node(item, null, cursor, tempNext);
tempNext.setPrev(temp);
哪里cursor
是正确的之前在新添加的节点应该去的节点。
如何设置其他节点以正确维护双向链表的状态?
我正在编写一些代码,我需要将一个节点添加到双向链表中。这是我到目前为止的代码:在双向链表中添加一个节点
Node tempNext = cursor.getNext();
temp = new Node(item, null, cursor, tempNext);
tempNext.setPrev(temp);
哪里cursor
是正确的之前在新添加的节点应该去的节点。
如何设置其他节点以正确维护双向链表的状态?
写有意义的变量名称将永远帮助你,永远不会使用名字,如温度*:
protected void insertNodeAfter(Node currentNode, Node newNode) {
Node displacedNode = currentNode.getNext();
currentNode.setNext(newNode);
newNode.setNext(displacedNode)
displacedNode.setPrev(newNode);
newNode.setPrev(currentNode);
}
-1用功能代码回答作业问题。 – 2010-03-22 18:50:55
你是对的比尔,我应得的。 – rodrigoap 2010-03-22 18:56:26
@BillK查看常见问题。如果清楚地阐述了作业问题,并且可以作为其他人的有用参考资料,那么这些问题就不存在了。 – 2013-03-09 23:13:04
好像所有你需要补充的是
cursor.setNext(temp);
你有一个具体的问题?
所以: 节点tempNext = cursor.getNext(); temp = new Node(item,null,cursor,tempNext); \t \t \t \t \t \t tempNext.setPrev(temp); \t \t \t \t \t \t cursor.setNext(temp); 将成功添加节点到链接列表是否正确? – 2010-03-22 18:20:14
它应该假设您正在使用的Node构造函数正确设置新节点的下一个和前一个节点。另外,@ rodrigoap对于有意义的变量名是绝对正确的。 – 2010-03-22 18:33:43
public void addItemBefore(int info)
{
previousItem = new ListItem(previousItem, info, this);
}
目前尚不清楚你的问题是什么。我根据你接受下面的答案,用猜测编辑它。 – 2013-03-09 23:09:44