1
我必须在间隔[-100; 100]中计算循环双向链表中的节点。我知道如何做到这一点,当我实施节点。这里是代码:计算链接列表中的特定节点Java
public void insert(int val){
....
if((val >= -100) && (val <= 100)){
number++;
}
.....
但是,当我在给定的位置(POS)删除一个节点,我不知道如何检查该节点的价值,所以我不知道,如果“数”停留在相同或减少。 这里是删除节点的代码:
public void deleteAtPos(int pos){
if (pos == 1){
if(size == 1){
start = null;
end = null;
size = 0;
number = 0;
return;
}
start = start.getLinkNext();
start.setLinkPrev(end);
end.setLinkNext(start);
size--;
return;
}
if (pos == size){
end = end.getLinkPrev();
end.setLinkNext(start);
start.setLinkPrev(end);
size--;
}
}
Node ptr = start.getLinkNext();
for (int i = 2; i <= size; i++){
if (i == pos){
Node p = ptr.getLinkPrev();
Node n = ptr.getLinkNext();
p.setLinkNext(n);
n.setLinkPrev(p);
size--;
return;
}
ptr = ptr.getLinkNext();
}
}
检查节点的值,你是什么意思'如何检查节点的值'?链表节点应该有一个数据存取方法getData()' – mangusta
是的,我有这种方法,但我不知道如何在这种情况下使用它。 – Eli