void List::delete_dupes() {
for (IntNode* i = head; i != 0; i = i->next) {
for (IntNode* curr = i; curr != 0; curr = curr->next) {
if ((curr->next != 0) && (curr != 0)) {
if (curr->next->data == i->data) {
IntNode* new = curr->next->next;
delete curr->next;
curr->next = new;
}
if (curr->next == 0) {
tail = curr;
}
}
}
}
}
我正在一个名为" List"的类中创建一个函数。在给定链接节点列表的情况下,应该删除包含与i所在节点相同值的每个节点,从而删除重复节点。
我可以正常运行该函数,因为它确实删除了重复的节点,但我遇到的小问题是我希望函数在一个函数调用中删除所有重复的节点,但它只会删除第一次复制。