实现两个集合a,b交集的算法?

liuyan55 2004-05-06 01:12:06
实现两个集合a,b交集的算法,
typedef struct node{
int data;
struct node *next;
} snode;

snode * setintersection(snode * a, snode * b)
{
snode *c,*p;
c=NULL;
while(a) /*verify wether the elements of SET a is in SET b or not*/
for(p=b;p&&p->data!=a->data;p=p->next);
…….
snode * setintersection(snode * a, snode * b),怎样理解结构体指针的函数(我不知道是否该这么说);另外对for(p=b;p&&p->data!=a->data;p=p->next);中的p&&p->data!=a->data如何理解?

...全文
356 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
cngdzhang 2004-05-06
  • 打赏
  • 举报
回复
它是归并两个链表(集合)
返回归并后的链表的头指针

for(p=b;p&&p->data!=a->data;p=p->next);中的p&&p->data!=a->data

是先判断p是否是NULL 即 0
短路算法
如果是NULL,那么循环条件不成立,退出循环
如果不是再判断p->data!=a->data 如果p->data不等于a->data
p下移

70,020

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧