我必须在区间[-100; 100]中计算循环双向链表中的节点。我知道在实现节点时如何做到这一点。这是代码:
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();
}
}
答案 0 :(得分:0)
据我所知,您只需添加
即可查看节点的值ptr.getval() or start.getval() //depending on the value of pos(aasuming getval is your function to retrieve node data)