| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 295 人关注过本帖
标题:一个链表求并集的问题,想了很久没结果,请教下大家怎么修改好?函数返回值 ...
只看楼主 加入收藏
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
结帖率:69.23%
收藏
已结贴  问题点数:2 回复次数:1 
一个链表求并集的问题,想了很久没结果,请教下大家怎么修改好?函数返回值的问题
我定义了一个求并集的c链表函数,不知道怎么返回值?谁给个建议
1 分钟前孤岛魂狼 | 分类:数据结构及算法 | 浏览1次
#include<stdio.h>
#include<malloc.h>
#define maxsize 50
typedef int ElemType;
typedef struct {
    ElemType node[maxsize];
    int length;
}list;

void creat(list *L)
{
  L=(list *)malloc(sizeof(list));
  L->length=0;
}

int length(list *L)
{
   int i=0;
   int len;
   while(L->node[i])
   {
      i++;
      len++;
   }
   return len;
} //////////////////一些基本的定义
int bingji(list *L1,list *L2,list *L3)
{
  int i,j,k=0;
  int len1,len2;
  len1=length(L1);
  len2=length(L2);
  L3=(list*)malloc(sizeof(list));
  for(i=0;i<len1;i++)
     L3->node[k++]=L1->node[i++];
  for(i=0;i<len1;i++)
  {
     j=0;
     while(j<len2 && L1->node[j]!=L2->node[i])
          j++;
     if(j==len1)
          L3->node[k++]=L2->node[i++];
  }
    L3->length=k;
    return L3;
}///////////////这一段为并集的函数下面是调用它的主函数
int main()
{
  list *L1=NULL;
  list *L2=NULL;
  list *L3=NULL;
  list *H=NULL;
  int i;
  creat(L1);
  creat(L2);
  creat(L3);
  H=bingji(L1,L2,L3);
  i=0;
  while(H!=NULL)
  {
     printf("%d",H->node[i]);
    i++;
  }
return 0;
}
不过我调用并集函数的时候,返回值不匹配,怎么设置链表变量好,
还有函数返回值怎么改?
搜索更多相关主题的帖子: include return 
2015-03-13 13:24
afanihao
Rank: 2
等 级:论坛游民
威 望:1
帖 子:62
专家分:99
注 册:2015-3-13
收藏
得分:2 
返回值有两种:一种是返回值,一种输出参数。
 
你想返回一个链表?那就返回链表的首节点指针就可以了。
 
2015-03-13 13:36
快速回复:一个链表求并集的问题,想了很久没结果,请教下大家怎么修改好?函数返 ...
数据加载中...
 
   



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

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