贪心法进行图着色

贪心法进行图着色

ID:46606591

大小:39.37 KB

页数:5页

时间:2019-11-26

贪心法进行图着色_第1页
贪心法进行图着色_第2页
贪心法进行图着色_第3页
贪心法进行图着色_第4页
贪心法进行图着色_第5页
资源描述:

《贪心法进行图着色》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、算法设计利用贪心法对图着色班级:110401班姓名:孟贺学号:201126385利用贪心法对图着色程序代码如下:#includeintarc[100][100];intn;//图中结点的总数intcolor[100];intbuildGraph()//构建图的邻接矩阵{intvertexNum;intarcNum;inti,j,k;printf("请输入结点总数!");scanf("%d",&vertexNum);n=vertexNum;printf("请输入图中边的总数!");sc

2、anf("%d",&arcNum);for(i=1;i<=vertexNum;i++)//初始化邻接矩阵{for(j=1;j<=vertexNum;j++){arc[i][j]=0;}}for(k=1;k<=arcNum;k++){if(k<=arcNum)printf("请输入图中相连接的两个结点");scanf("%d%d",&i,&j);arc[i][j]=1;arc[j][i]=1;}printf("该图的邻接矩阵为:");for(i=1;i<=vertexNum;i++){5for(j=1;

3、j<=vertexNum;j++){printf("%d",arc[i][j]);}printf("");}return0;}inttest(intm,intt)//判断是否冲突{intflag=1;for(intj=1;j<=n;j++){if(arc[m][j]==1&&color[j]==t)flag=0;}if(flag==0)return0;elsereturn1;}intdrawColor()//对结点进行着色{intk;intm=n;inti;color[1]=1;for(inti=2;i<

4、=n;i++){color[i]=0;}k=0;//############################################while(m>1){k++;5for(i=2;i<=n;i++){if(color[i]!=0){continue;}intflag=test(i,k);if(flag){color[i]=k;m--;}elsecontinue;}}//######################################################printf("着色结

5、果如下:");for(i=1;i<=n;i++){printf("结点颜色");printf("%d%d",i,color[i]);}}intmain(){buildGraph();drawColor();return0;}37465128实验示例如下:5程序运行结果如下:37465128即着色结果如右图所示:5

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

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

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