c如何写两个集合的差集

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c如何写两个集合的差集相关的知识,希望对你有一定的参考价值。

c如何写两个集合的差集

参考技术A 用3个数组,一个保存第一个集合,-个保存另一个集合,再一个保存差集.
然后利用比较对他们进行操作.
单链表实现求两个集合的差集
int Find(LinkList L,datatype x)

LNode *p;
p=L->next; //这里不明白为什么要把L->next赋给p (L->next不就等于是第二个结点的指针了么)
while(p!=NULL&&p->data<x) p=p->next;
if(p->data==x) return 1;
else return 0;

LinkList Intersection1(LinkList La,LinkList Lb)

LNode *pa,*r;
pa=La;
while(pa->next!=NULL)
if (Find(Lb,pa->next->data)) pa=pa->next;
else r=pa->next;
pa->next=r->next;
free(r);

return La;
本回答被提问者采纳

求2个list的差集

我的list中的内容是一个实体类,主要有SKU(商品)、pay(支付方式)、receiveport(收货地址)三个字段,现在要求2个list的差集,要求把list2中出现的与list1完全相同的实体类从list1中去掉,判断完全相同的标准就是SKU、pay、receiveport三个字段
问题解决了
var NewList = (from t in lstAll
from g in lstHasDel
where t.SKU != g.SKU
select t
).ToList();
return NewList;

参考技术A 你好,写下思路:
1、将实体类的hashcode和equals方法重写;
2、遍历list2,判断每一个对象是否在list1中存在,存在的话,则remove.
这些都相当简单。你看还有什么疑问吗?追问

我想用linq方法,尽量不使用遍历。(我用的是C#)

追答

真不好意思,我收到了你的求助,还以为是java的呢,没学过C#,不过你按着思路用c#实现也是很容易的。你可以试一试。

以上是关于c如何写两个集合的差集的主要内容,如果未能解决你的问题,请参考以下文章

本人碰见一道C语言难题,寻大神帮助,利用C语言实现:求任意两个集合的交集、并集、差集,

计算两个集合的差集——第六期 Power8 算法挑战赛

java如何使用代码求两个list集合的差集呢?

arcgis怎么求差集

Python入门教程第48篇 集合的对称差集

两个集合求对称差集