贪心算法----活动时间安排.doc

贪心算法----活动时间安排.doc

ID:61667952

大小:62.50 KB

页数:6页

时间:2021-03-09

贪心算法----活动时间安排.doc_第1页
贪心算法----活动时间安排.doc_第2页
贪心算法----活动时间安排.doc_第3页
贪心算法----活动时间安排.doc_第4页
贪心算法----活动时间安排.doc_第5页
资源描述:

《贪心算法----活动时间安排.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、实验二:贪心算法【实验目的】深入理解贪心法的算法思想,应用贪心算法解决实际的算法问题。【实验性质】验证性实验。【实验要求】有n个活动的集合A={1,2,…,n},其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能使用这一资源。求解安排尽量多项活动在该场地进行,即求A的最大相容子集。【程序代码】#includevoidinput(inta[][3]);//输入活动时间voidsort(inta[][3]);//排序voidoutput1(inta[][3]);//排序的结果输出intgreed(inta[][3],in

2、tarr[][50][3],intm);//判断记录被选中的活动时间voidoutput2(inta[][50][3],inty,intm);//输出最大的的活动时间intyi=0;intn;intmain(){intarray[50][3];intarr[50][50][3]={0};intz,y,m,b[12]={0};printf("活动总数量n(n<50)!!!");scanf("%d",&n);input(array);sort(array);printf("");output1(array);printf("");for(m=0;

3、m

4、i,j,k,t;for(i=0;ia[j+1][2]){t=a[j][k];a[j][k]=a[j+1][k];a[j+1][k]=t;}}voidoutput1(inta[][3]){inti,j;printf("按结束时间的升序排列如下:");for(i=0;i

5、");}}intgreed(inta[][3],intarr[][50][3],intm){inti,j,k,y=1;k=a[m][2];//for(i=0;i<3;i++)arr[yi][0][i]=a[m][i];//for(i=m;i

6、了原来序号为第%d活动,他的开始结束时间分别为:",a[m][i][0]);for(j=1;j<3;j++){printf("%d",a[m][i][j]);}printf("");}}法二#include#defineactive_num11//活动数#definetrue1         //记录被选的活动#definefalse0        //未被选择的活动intgreedySelector(ints[],intf[],intb[])// 算法{    b[0]=true;    intj=0;    inti=1;   

7、 intcount=1;    for(i=1;i<=active_num;i++)    {        if(s[i]>f[j])        {            b[i]=true;            j=i;            count++;        }        else        b[i]=false;    }    printf("activenumberis%d",count);    for(i=0;i

8、  printf("%d",i+1);    }  

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。