数据结构实验报告四-地图染色问题
数据结构
实
验
报
告
实验名称:实验五题目3 地图染色问题
学生姓名:xxx ________________班级:2013211128______________班内序号:xx__________________学号:2013210783______________日期:2014/12/19_____________
1.实验目的
目的:
掌握图基本操作的实现方法
了解最小生成树的思想和相关概念
了解最短路径的思想和相关概念
学习使用图解决实际问题的能力
内容:
对下图所示的地图进行染色,要求使用尽可能少的颜色进行染色,完成该算法。测试数据:
2. 程序分析
2.1 存储结构
二维数组
struct Color
{
int Num;
int Links;
}; 2.2 程序流程
2.3 关键算法分析 算法1:void Arrange(int map[][N],Color a[])
[1] 算法功能:对邻接矩阵的顶点按度进行排序
[2] 算法基本思想:计算每个顶点的度数,然后进行冒泡排序
[3] 算法空间、时间复杂度分析:O (n^2)
[4] 代码逻辑
void Arrange(int map[][N],Color a[])
{ 对地图所对应的邻接矩阵
按度排序顶点序号 进行染色 判断当前染色顶点与相邻顶点颜色是否相同 直到所有顶点染色完毕,显示染色结果
染色下一个顶点 重新寻找有效颜色进行染色 是 否
相关主题