1.问题
给定无向连通图G和m种颜色,用这些颜色给图的顶点着色,每个顶点一种颜色。如果要求G的每条边的两个顶点着不同颜色。给出所有可能的着色方案;如果不存在,则回答“NO”。
2解析
使用回溯算法来解决问题。
设G有n个顶点,将顶点编号为1, 2, … n,则搜索空间为深度n的m叉完全树,将颜色编号为1,2, .,m,结点
<x1,x2…,xk >(x1,x2…,xk∈{1,…,m},1≤k≤m)表示顶点1的颜色x1,顶点2的颜色x2,…,顶点k的颜色xk

2.设计

```cpp
//判断是否能着色
bool cancColoring(int x) {for (int i = 1; i <= n; ++i) {//若两点相邻且颜色相同if (graph[i][i] && color[i] == color[i]) {return false;}}return true;
}
//着色
void coloring(int x){if (x>n) {for (int i = 1; i <= n; i++){printf("%d ", color[i]);}s++;printf("\n");} else {for (int i = 1; i <= m; ++i) {color[x] = i;if (cancColoring(x)) {coloring(x+1);}color[x] = 0;}}
}
、3.分析![在这里插入图片描述](https://img-blog.csdnimg.cn/20210606111217284.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ1NzM5NjEy,size_16,color_FFFFFF,t_70)4.源码
https://github.com/695950719/Algorithm-design/blob/main/%E7%9D%80%E8%89%B2%E9%97%AE%E9%A2%98.cpp

2021-06-06相关推荐

  1. 投票服务器维护时间,2021年06月21日维护预览,合服投票结果公布! ​

    原标题:2021年06月21日维护预览,合服投票结果公布! ​ 亲爱的玩家,大家好!!又到了每周的维护预览时间! 以下是本周维护内容: 1.本周维护之后, 新资料片<天粹英华>将在 局部服 ...

  2. 梦想Android版CAD控件2021.12.06更新

    梦想Android版CAD控件2021.12.06更新 下载地址:https://www.mxdraw.com/ndetail_30181.html 修改中文扩展数据名,保存不成功问题 增加WORLD ...

  3. 梦想CAD控件 2021.12.06更新

    梦想CAD控件 2021.12.06更新 下载地址:https://www.mxdraw.com/ndetail_30180.html 修改得到cad.dwg预览图片,如果图片是png格式,读取失败的 ...

  4. 【转】傅里叶分析之掐死教程(完整版)更新于2014.06.06

    转自:傅里叶分析之掐死教程(完整版)更新于2014.06.06 - 知乎 作 者:韩 昊 知 乎:Heinrich 微 博:@花生油工人 知乎专栏:与时间无关的故事 谨以此文献给大连海事大学的吴楠老师 ...

  5. [转载]傅里叶分析之掐死教程(完整版)更新于2014.06.06 - 与时间无关的故事 - 知乎专栏...

    傅里叶分析之掐死教程(完整版)更新于2014.06.06 Heinrich 作 者:韩 昊 知 乎:Heinrich 微 博:@花生油工人 知乎专栏:与时间无关的故事 谨以此文献给大连海事大学的吴楠老 ...

  6. (学习日记)2023.06.06

    写在前面: 由于时间的不足与学习的碎片化,写博客变得有些奢侈. 但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈. 既然如此 不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录, ...

  7. 2021.06.06家庭财经系统制作(2)

    show tables; 查看数据库里有什么表命令. 碰到mysql软件问题.比想象的难缠. 用之前的方式打不开黑框(鼠标单击 mysql5.7 ccommand line Client),黑框一闪而 ...

  8. Abelssoft SSD Fresh Plus 2021 v10.06.31890 固态硬盘性能优化工具中文版

    前言 Abelssoft SSD Fresh 2021是目前互联网上非常优秀的一款功能强大并且非常实用的固态硬盘性能优化提升工具软件,通过该软件可以帮助用户快速优化系统SSD的使用,不仅可以延长固态硬 ...

  9. Go语言之禅 | Gopher Daily (2021.05.06) ʕ◔ϖ◔ʔ

    每日一谚:Go is about being a language that focuses on code being readable. Go技术生态 Go语言之禅 - https://mp.we ...

  10. 林阳斌集美大学计算机学院,集美大学计算机工程学院导师教师师资介绍简介-林阳斌副教授(2021.04.06)...

    姓名 林阳斌 性别 男 出生年月 1987.4 所在单位 计算机工程学院 学历 博士 职称 副教授 毕业院校(最高学历):厦门大学 承担的主要课程:数学建模,数据可视化,运筹学 研究领域及方向:三维视 ...

最新文章

  1. PHP mysql数据迁移,【MySQL】迁移数据目录php-php教程
  2. python与excel结合能做什么-Python网络爬虫与文本数据分析
  3. boost::math模块具有输出和输入方面的非有限环回的简要基本测试
  4. pdf如何转换成word文档
  5. 获取SQL SERVER某个数据库中所有存储过程的参数
  6. (十四)消息中间件MQ详解及四大MQ比较
  7. python鼠标事件 详解_Python selenium键盘鼠标事件实现过程详解
  8. heroku_如何使用Express.js和Heroku将应用程序部署到Web
  9. [React] 尚硅谷 -- 学习笔记(一)
  10. 面试官:Spring事务失效的场景有哪些?如何解决?
  11. 修改Chrome默认搜索引擎为Google.com
  12. 教你如何用C语言做一个简单的贪吃蛇
  13. 实时帧数手机_小米部分高刷新率机型吃鸡强制开启120帧
  14. 思科最模拟器Cisco Packet Tracer 7.3.0安装配置
  15. IL反汇编器(ILDASM)和IL汇编器(ILASM)Hello World小demo
  16. wince同步软件区别
  17. wps垂直排列标题与文本_如何垂直设置wps文本
  18. steam游戏存档迁移
  19. Dubbo Admin 发布 v0.1;VMware 或与微软放下恩怨展开合作
  20. JavaFx之TableView表格操作----增删改及行多选

热门文章

  1. java初始化一个链表_Java 链表(LinkNode)的简单操作:初始化,遍历,插入,删除等...
  2. 使用正则表达式进行高效的测试
  3. DevOps之旅:运维人员阅读源代码的实用技巧
  4. 云服务器 ECS 配置:阿里云ECS Windows Server 2012 搭建AD
  5. 基于Android5.0的Camera Framework源码分析 (三)
  6. 你自己不优秀,认识谁都是个屁
  7. Linux必学的系统管理命令
  8. MYSQL编译参数详解
  9. Route 66地图安装的一个简单方法,在N70上验证过
  10. 2.5.3 工作日处理函数(自定义节假日).sql