1
私は、単一リンクリストの最後にノードを追加しようとしていますが、最初の要素だけが追加されています。何が間違っているの?リンクされたリストadd at end not working
void addAtEnd(int key){
Node * head = Node;
if(head == NULL){
head = new Node;
head->key = key;
head->next = NULL;
}
else{
Node * current = head;
while(current != NULL){
current = current->next;
}
if(current == NULL){
Node *temp = new Node;
temp->key = key;
temp->next = NULL;
current = temp;
}
}
}
'Node * head = Node;'これはどういう意味ですか? –
[リンクされたリストの最後に要素を追加する方法](http://stackoverflow.com/questions/20384407/how-to-add-elements-to-the-end-of-a-linked-リスト)。基本的にあなたのwhileループは 'while(current-> next!= NULL)'でなければならず、 'if'を削除するか、' if(current-> next == NULL) 'に変更してください。もちろん、@ LuchianGrigoreによって指摘されている問題に対処してください。 –