1
[-100; 100]の間隔でCircular Doubly Linked Listのノードを数えなければなりません。私はノードを実装しているときにそれを行う方法を知っています。ここでは、コードです:リンクされたリスト内の特定のノードを数える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