問題:リンクリスト実装を使用してスタックから要素をポップできないのはなぜですか?
もう一度要素をポップできません。 例では、スタックの上に4,3,2,1があります.3,2を削除することはできません。
誰でも私をガイドできますか?以下は
スタックの実装です:
public static void push(int data){
if(head==null){
Node newNode=new Node(data);
head=newNode;
}else{
Node newNode1=new Node(data);
newNode1.next=head;
head=newNode1;
}
}
public static int pop(){
if(head==null){
return 0;
}
else{
Node temp=head;
int a=temp.data;
temp=null;
return a;
}
}
public static void traverse(){
Node temp=head;
while(temp!=null){
System.out.println(temp.data);
temp=temp.next;
}
}
実際に何かを行うには、 'temp = null;'と期待していましたか? – user2357112
あなたは 'head'に' temp.data'としてアクセスし、その値を返します。しかし、あなたは 'head'で何かをやったことはありませんでした... * _pshh、' temp.next() 'をhead_ *に代入しました。 – KarelG
' head = temp.next'がありません。前のものを削除/削除します。 – Abubakkar