题目描述
已知中国地图,对各省进行着色,要求相邻省所使用的颜色不同,并保证使用的颜色
总数最少。
算法思想(不知道这样做对不对看着结果倒是没问题)
区域颜色从第一个颜色开始涂,满足相邻区域颜色不相同条件。
结果
代码
from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt # 化图
from matplotlib.patches import Polygon # 上色
import time
# 字典代替邻接矩阵
str = {
'河北省': ['内蒙古自治区', '山西省', '山东省', '北京市', '天津市', '辽宁省'],
'山东省': ['河北省', '天津市', '山西省', '湖南省', '江苏省'],
'安徽省': ['山东省', '湖南省', '湖北省', '江西省', '浙江省', '江苏省'],
'江苏省': ['山东省', '安徽省', '上海市', '浙江省'],
'上海市': ['江苏省', '浙江省'],
'浙江省': ['上海市', '安徽省', '江西省', '福建省', '江苏省'],
'江西省': ['安徽省', '湖北省', '湖南省', '广东省', '福建省', '浙江省'],
'福建省': ['浙江省', '江西省', '广东省'],
'黑龙江省'