两个有序链表序列的合并 两个有序链表序列的合并


两个有序链表序列的合并 两个有序链表序列的合并

文章插图
大家好,小龙来为大家解答以上的问题 。两个有序链表序列的合并,两个有序链表序列的合并这个很多人还不知道,现在让我们一起来看看吧!
【两个有序链表序列的合并 两个有序链表序列的合并】1、你这个合并方法是不正确的,我看你的程序执行的只是比较两个链表对应序号的节点,大的就放到c链表里,两个链表里的很多节点给漏掉了,并没有真正实现两个链表的合并.修改后如下: void Chain::Merge(Chain&A,Chain&B,Chain&C) { ChainNode*p,*q,*t; p=A.first;q=B.first; if(A.first->data>=B.first->data) t=C.first=A.first; else t=C.first=B.first; while(p!=NULL&&q!=NULL) { if(p->data>=q->data) { t=p; p=p->link; t=t->link;} else { t=q; q=q->link; t=t->link;} } while(p==NULL&&q!=NULL) { t=q; q=q->link; t=t->link; } while(q==NULL&&p!=NULL) { t=p; p=p->link; t=t->link; } t->link=NULL; }我怎么调试呀,好多东西都没定义,我又不清楚你定义的数据结构.你要不把题目全发给我,我给你看. 。
本文到此分享完毕,希望对大家有所帮助 。

    推荐阅读