当前位置: > 已知两个顺序表A和B分别表示两个集合,其元素递增排列,编写一个函数求出A和B的交集...
题目
已知两个顺序表A和B分别表示两个集合,其元素递增排列,编写一个函数求出A和B的交集
要用简单的c++写啊,刚学不太会啊
已知两个整数集合A和B,它们的元素分别依元素值递增有序存放在两个单链表HA和HB中,编写一个函数求出这两个集合的并集C,并要求集合C的链表的结点仍依元素值递增有序存放。(提示:求并集不是归并!)

提问时间:2021-01-02

答案
由于问题与问题补充不一致,问题是要求交集,是找A和B的相同元素,问题补充里是求并集,强调不是归并,我按并集写的,如果是交集再稍加修改就可以了.
LinkList *LinkMag(LinkList *ha, LinkList *hb)//假设ha和hb是带头结点的链表
{
x09Link *p, *q, *r,*hc,*aa;
x09hc->head = (Link*)malloc(sizeof(Link));
x09p = ha->next;
x09q = hb->next;
x09r = hc;
x09while(p!=NULL && q!=NULL)
x09{x09aa = (Link*)malloc(sizeof(Link));
x09x09if(p->datadata)//如果是交集的话,没有传递数据,只有指针移动,即只执行p=p->next;就可以了
x09x09{x09aa->data = p->data;
x09x09x09p = p->next;
x09x09}
x09x09else//如果是交集的话,还要判断等于的情况,只有等于的情况,才有传递数据,而大于的情况与小于情况类似,只有指针移动.
x09x09{x09aa->data = q->data;
x09x09x09q = q->next;
x09x09}
x09x09r->next = aa;
x09x09r = aa;
x09}
x09while(p!=NULL)
x09{x09aa = (Link*)malloc(sizeof(Link));
x09x09aa->data = p->data;
x09x09p = p->next;
x09x09r->next = aa;
x09x09r = aa;
x09x09}
x09while(q!=NULL)
x09{x09aa = (Link*)malloc(sizeof(Link));
x09x09aa->data = q->data;
x09x09q = q->next;
x09x09r->next = aa;
x09x09r = aa;
x09x09}
r->next=NULL;
return hc;
}
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
版权所有 CopyRight © 2012-2019 超级试练试题库 All Rights Reserved.