注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

浩瀚星云

上善若水 厚德载物<学习版>

 
 
 

日志

 
 

利用顺序表设计一个算法,求两个无序集合的交集  

2014-10-17 11:19:08|  分类: 算法设计与分析 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
#include <stdio.h>

int SelectSame(int *h1,int *h2,int *h3 ,int n1,int n2)  
{
int i,j,t,k=0;
for(i=0;i<n1;i++)
    {
      for(j=0;j<n2;j++)
  {
  if(h1[i]==h2[j])
  {
for(t=0;t<k;t++)
{
  if(h3[t]==h1[i])
  {
  break;
  }
}
if(t>=k)             
{
h3[k++]=h1[i];
}
  }
  }
}
return k;
}
main()
{
       int i,j,n1,n2,length=0;
       int a[100],b[100],c[100];
       printf("输入集合N1的大小(小于100):");
       scanf("%d",&n1);
       printf("输入集合N2的大小(小于100):");
       scanf("%d",&n2);

       printf("输入集合N1的元素:\n");
       for(i=0;i<n1;i++)
       {
         scanf("%d",&a[i]);
       }
       printf("输入集合N2的元素:\n");
       for(j=0;j<n2;j++)
       {
         scanf("%d",&b[j]);
       }
       printf("您输入的集合N1是:");
       for(i=0;i<n1;i++)
       {
          printf(" %d ",a[i]);
       }
       printf("\n");
       printf("您输入的集合N2是:");
       for(j=0;j<n2;j++)
       {
          printf(" %d ",b[j]);
       }
       printf("\n");
       printf("交集运算的结果是:");
       length=SelectSame(a,b,c,n1,n2);
       if(length!=0)
       {
                 //length!=0时表明交集存在
            for(i=0;i<length;i++)
            {
                  printf(" %d ",c[i]);
     }
    printf("\n");
}
        else
        { 
                //length==0时表明交集不存在
        printf("null\n");
 }
}
利用顺序表设计一个算法,求两个无序集合的交集 - brain - 百年孤独
 
 
  评论这张
 
阅读(51)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017