武汉理工大学:《软件技术基础》课程教学资源(PPT课件)例、地图四染色问题

例、地图四染色问题 四染色”定理是计算机科学中著名的定理之 使地图中相邻的国家或行政区域不重色,最少可用四种 颜色对地图着色。 思想:对每个行政区编号:1-7 对颜色编号;a、b、c、d; 从第一号行政区开始逐一染色,每一个区域逐次用四种 颜色进行试探,着所取颜色与周围不重,则用栈记下来 该区域的色数,否则依次用下一色数进行试探。若出现 a-d均与周围发生重色,则需退栈回溯,修改当前栈顶 的色数
例、 地图四染色问题 “四染色”定理是计算机科学中著名的定理之一。 使地图中相邻的国家或行政区域不重色,最少可用四种 颜色对地图着色。 思想:对每个行政区编号:1-7 对颜色编号;a、b、c、d; 从第一号行政区开始逐一染色,每一个区域逐次用四种 颜色进行试探,若所取颜色与周围不重,则用栈记下来 该区域的色数,否则依次用下一色数进行试探。若出现 a-d均与周围发生重色,则需退栈回溯,修改当前栈顶 的色数

思想:对每个行政区编号:1-7 对颜色编号;a、b、c、d; a粉色b黄色 思考: c红色d绿色 算法? 需何种数据结构?
思想:对每个行政区编号:1-7 对颜色编号;a、b、c、d; a 粉色 b 黄色 c 红色 d 绿色 思考: 算法? 需何种数据结构?

Void macolor(int RIO,int n, int sO) 1#粉色 s[1]=1;∥/1号区域染1色 2#黄色 =2;上=1;∥/为区域号,」为染色号 (1) (3) while( k=n) 3#红色 whle(J4)THEN{|=-1;上=s叮]+1 12|23a4 R[1:7,1:7] 12243 1234567 10111110 21000010 1001100 1010110 123 510 23243 61101100 70000000 2|32|43|1
0 1 1 1 1 1 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 1 0 1 0 1 1 0 1 0 1 1 0 1 0 1 1 0 1 1 0 0 0 0 0 0 0 0 0 R [ 1: 7 , 1 : 7 ] 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Void mapcolor(int R[][],int n,int s[]) { s[1]=1; // 1号区域染1色 I=2; J=1; // I为区域号,J为染色号 while ( I4) THEN { I=I-1; J=s[I]+1 } } (2) (1) (4) (5) (6) (7) (3) 1# 粉色 2# 黄色 3# 红色 4# 绿色 1 2 3 2 1 2 3 1 2 2 4 3 1 2 3 2 4 3 1 2 3 2 4 1 2 3 2 4 3 1 1 2 2 3 4 1 2 3 4 5 6 7 S [ 1 : 7 ]

Void macolor(int Ru[Lint n, int s[l) 1234567 s[1]=1;∥/1号区域染1色 =2;J=1;∥/为区域号,为染色号 0000 234567 0110 while(k4)THEN{|=-1;J=s[]+1
Void mapcolor(int R[][],int n,int s[]) { s[1]=1; // 1号区域染1色 I=2; J=1; // I为区域号,J为染色号 while ( I4) THEN { I=I-1; J=s[I]+1 }} } 0 0 0 0 0 0 0 1 1 0 1 1 0 0 1 0 1 1 0 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 0 1 0 0 0 0 1 0 0 1 1 1 1 1 0 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 1 2 3 4 5 6 7

Void macolor(int Ru[Lint n, int s[l) 1234567 s[1]=1;/1号区域染1色 =2;J=1;∥/为区域号,为染色号 0000 000 while(k4)THEN{|=-1;J=s[]+1
Void mapcolor(int R[][],int n,int s[]) { s[1]=1; // 1号区域染1色 I=2; J=1; // I为区域号,J为染色号 while ( I4) THEN { I=I-1; J=s[I]+1 }} } 0 1 1 1 1 1 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 1 0 1 0 1 1 0 1 0 1 1 0 1 0 1 1 0 1 1 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 1 2 3 4 5 6 7 I=2,J=1 k=1

Void macolor(int Ru[Lint n, int s[l) 1234567 s[1]=1;/1号区域染1色 =2;J=1;∥/为区域号,为染色号 000 101 000 while(k4)THEN{|=-1;J=s[]+1
Void mapcolor(int R[][],int n,int s[]) { s[1]=1; // 1号区域染1色 I=2; J=1; // I为区域号,J为染色号 while ( I4) THEN { I=I-1; J=s[I]+1 }} } 0 1 1 1 1 1 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 1 0 1 0 1 1 0 1 0 1 1 0 1 0 1 1 0 1 1 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 1 2 3 4 5 6 7 I=2,J=2 k=1

Void macolor(int Ru[Lint n, int s[l) 1234567 s[1]=1;/1号区域染1色 =2;J=1;∥/为区域号,为染色号 0000 000 while(k4)THEN{|=-1;J=s[]+1 k=2
Void mapcolor(int R[][],int n,int s[]) { s[1]=1; // 1号区域染1色 I=2; J=1; // I为区域号,J为染色号 while ( I4) THEN { I=I-1; J=s[I]+1 }} } 0 1 1 1 1 1 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 1 0 1 0 1 1 0 1 0 1 1 0 1 0 1 1 0 1 1 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 1 2 3 4 5 6 7 I=2,J=2 k=2

Void macolor(int Ru[Lint n, int s[l) 1234567 s[1]=1;/1号区域染1色 =2;J=1;∥/为区域号,为染色号 0000 234567 0110 while(k4)THEN{|=-1;J=s[]+1 k=2
Void mapcolor(int R[][],int n,int s[]) { s[1]=1; // 1号区域染1色 I=2; J=1; // I为区域号,J为染色号 while ( I4) THEN { I=I-1; J=s[I]+1 }} } 0 0 0 0 0 0 0 1 1 0 1 1 0 0 1 0 1 1 0 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 0 1 0 0 0 0 1 0 0 1 1 1 1 1 0 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 1 2 3 4 5 6 7 I=3,J=1 k=2 2

Void macolor(int R[I,int n, int s) 1234567 =2;=1;∥/为区域号,为染色号 000 101 000 while(k4)THEN{|=-1;J=s[]+1
Void mapcolor(int R[][],int n,int s[]) { …… I=2; J=1; // I为区域号,J为染色号 while ( I4) THEN { I=I-1; J=s[I]+1 }} } 0 1 1 1 1 1 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 1 0 1 0 1 1 0 1 0 1 1 0 1 0 1 1 0 1 1 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 2 3 4 1 2 3 4 5 6 7 I=6,J=1 k=1

Void macolor(int R[I,int n, int s) 1234567 1=6;J=1;∥/为区域号,为染色号 0000 while(k4)THEN{|=-1;J=s[]+1
Void mapcolor(int R[][],int n,int s[]) { …… I=6; J=1; // I为区域号,J为染色号 while ( I4) THEN { I=I-1; J=s[I]+1 }} } 0 0 0 0 0 0 0 1 1 0 1 1 0 0 1 0 1 1 0 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 0 1 0 0 0 0 1 0 0 1 1 1 1 1 0 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 2 3 4 1 2 3 4 5 6 7 I=6,J=2 k=1
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第3章 基本数据结构及运算(2/4).ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第3章 基本数据结构及运算(1/4).ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第2章 算法.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第1章 导论(主讲:阮幼林).ppt
- 武汉理工大学:《软件技术基础》课程教学资源(教案讲义)第2章 基本数据结构及运算.doc
- 武汉理工大学:《软件技术基础》课程教学资源(作业习题)习题.doc
- 《无线网络的搭建》讲义.doc
- 《Ubuntu实用学习教程》PDF电子书(共十五章).pdf
- 《Ubuntu实用学习教程》讲义.pdf
- 东南大学计算机系:《网络安全与病毒防范》课程教学资源(PPT课件讲稿,龚俭).pdf
- 《PTC 全球服务》(第一册)PDF电子书.pdf
- 《PTC 全球服务》(第二册)PDF电子书.pdf
- 台湾科技大学:《proewildfire资料及教学课件》第二部分 零件组立简介(林清安)9-part_2.pdf
- 台湾科技大学:《proewildfire资料及教学课件》第八章 零件设计实例应用(林清安).pdf
- 台湾科技大学:《proewildfire资料及教学课件》第七章 曲面特征的建立(林清安).pdf
- 台湾科技大学:《proewildfire资料及教学课件》第六章 实体特征的建立(林清安).pdf
- 台湾科技大学:《proewildfire资料及教学课件》第五章 基准特征的建立(林清安).pdf
- 台湾科技大学:《proewildfire资料及教学课件》第四章 3D视角的控制(林清安).pdf
- 台湾科技大学:《proewildfire资料及教学课件》第三章 绘制2D剖面(林清安).pdf
- 台湾科技大学:《proewildfire资料及教学课件》第二章 Pro/E 基本操作.pdf
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第3章 基本数据结构及运算(3/4).ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第3章 基本数据结构及运算(4/4).ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第四章 查找与排序技术(1/2).ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第四章 查找与排序技术(2/2).ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第三篇 数据库技术小结.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第一章 数据库技术概述.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(作业习题)作业一.doc
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)算法和数据结构小结.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第三章 关系数据库的标准语言SQL(3.1-3.5).ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第三章 关系数据库的标准语言SQL(3.6-3.9).ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第二章 关系数据库.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第五章 一个数据库应用系统的设计与实现.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(教案讲义)第五篇 数据库技术.doc
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第四章 数据库设计.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第一章 操作系统概述.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第二章 进程的描述与控制.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第三章 进程的同步与通信.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第四章 进程的调度.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)第五章 存储器管.ppt
- 武汉理工大学:《软件技术基础》课程教学资源(PPT课件)操作系统复习.ppt