| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 429 人关注过本帖
标题:请教高手,指出错误,感谢啦??
只看楼主 加入收藏
迢迢菜
Rank: 2
等 级:新手上路
威 望:4
帖 子:11
专家分:0
注 册:2014-2-26
结帖率:33.33%
收藏
已结贴  问题点数:20 回复次数:2 
请教高手,指出错误,感谢啦??
求两个链表中元素的并集,程序可能有些啰嗦,如果有简洁的话,求指导啦
linklist *Union(linklist *la,linklist *lb)
{linklist *head,*pc,*p,*q,*s,*temp,*t;
head=la;
p=head;
pc=head;
q=lb;
temp=(linklist*)malloc(sizeof(linklist));
temp->next=NULL;
t=temp;
while(pc->next!=Null)
{pc=pc->next;}
while(q!=Null)
{
 if(p->data!=q->data)
 {p=p->next;
  if(p==pc->next)
  {s=(linklist*)malloc(sizeof(linklist));
   s->data=q->data;
   t->next=s;
   t=t->next;
   q=q->next;
   p=la->next;
   /*la=la->next;*/}
  }
  else{
  p=p->next;
  q=q->next;}
}
pc->next=temp->next;
t->next=Null;
return(head) ;
}
搜索更多相关主题的帖子: 元素 
2014-03-28 20:38
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:5 
如果传入的a 为null,那么程序就带出一个null指针了

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2014-03-30 14:00
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:15 
linklist *find(linklist *la,int data)
{
    while (la != NULL) {
        if (la->data == data) {
             return la;
        }
   
        la = la->next;
    }
   
    return NULL
}

linklist *Union(linklist *la,linklist *lb)
{
    // 如果la 为NULL,直接return lb,没有必要合并   
    if (la == NULL) {
        return lb;
    }
   
    linklist *head = la;
    linklist *tail = la;

//tail 指向最后一项
    while (tail->next != NULL) {
        tail=tail->next;
    }
   
    linklist *bTraver = lb;
   
    while (bTraver != NULL) {
        if(find(head, bTraver->data) == NULL) { // 没有找到,则在末尾增加一项
            tail->next = (linklist*)malloc(sizeof(linklist));
            tail = tail->next;
            
            tail->data = bTraver->data;
            tail->next = NULL;
        }
        
        bTraver = bTraver->next;
    }
   
    return head;
}

没有运行过,大体是这样

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2014-03-30 14:11
快速回复:请教高手,指出错误,感谢啦??
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020359 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved