Я хочу создать linkedList из Arraylist. Я использую новый curNode и даю значение, но когда я хочу его удалить после использования, это неправильно. почему я не могу удалить curNode?Почему я не могу удалить узел Linkedlist?
struct ListNode {
int val;
ListNode *next;
ListNode(int x) : val(x), next(NULL) {}
};
ListNode *addListNode(int* arr,int n){
ListNode *head=NULL,*curNode,*tail;
for(int index=0;index!=n;++index){
curNode = new ListNode(arr[index]);
if (head==NULL)
head=curNode;
else
tail->next=curNode;
tail = curNode;
//delete curNode;
}
return head;
}
Что вы имеете в виду, это неправильно? Что происходит? –
Выполняя удаление, вы удаляете только что созданный узел (освободите память под указателем curNode, так и под заголовком/хвостом). Вы можете удалить узел, когда вы удалите его из списка. – prajmus
ваш удаляющий узел в java вы можете пойти с итератором и удалить итератор –