我有一个函数,它接收两个双向链表,并将它们放入这个双向链表中,并且我在合并时没有问题。我遇到的问题是,作为参数使用的两个链表在结束时需要为空,但我不知道如何做到这一点。
void merge(DLinkedList a, DLinkedList b)
{
DNode* atemp = a.header;
DNode* btemp = b.header;
while(atemp != NULL)
{
insertOrderUnique(atemp->data);
atemp = atemp->next;
}
while(btemp != NULL)
{
insertOrderUnique(btemp->data);
btemp = btemp->next;
}
}发布于 2021-10-04 22:37:46
我不能完全确定你的DLists是什么样子的,但你不应该复制它们。因此,不是:
void merge(DLinkedList a, DLinkedList b)写入:
void merge(DLinkedList& a, DLinkedList& b)或者:
void merge(DLinkedList* a, DLinkedList* b)https://stackoverflow.com/questions/69440473
复制相似问题