图色数的一种求法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2018年 4月 Journal of Science of Teachers′College and University Apr. 2018 文章编号:1007-9831(2018)04-0001-03

图色数的一种求法

杨雅琴

(齐齐哈尔大学 理学院,黑龙江 齐齐哈尔 161006)

摘要:利用组合数学中图转化成树的思想,从图中一顶点出发,按照图的邻接矩阵中各顶点间边存在的情况,建立各级树,根据要着色的顶点与已着色顶点间边存在的情况,给所要着色的顶点着色.当所有顶点都已着色后,所用颜色个数就是图的色数.

关键词:图;邻接矩阵;树;色数

中图分类号:O157 文献标识码:A doi:10.3969/j.issn.1007-9831.2018.04.001

A method for calculating the chromatic number of a graph

YANG Ya-qin

(School of Science,Qiqihar University,Qiqihar 161006,China) Abstract:Using combinatorial mathematics graph into a tree,starting from a vertex in that graph,builds trees at all levels according to the existence of edges between vertices in the adjacency matrix of graphs.According to the existence of coloring vertices and coloured vertex edges,color the vertices which need to be colored.The number of colors used is the chromatic number of the graph when all vertices are colored.

Key words:graph;adjacency matrix;tree;chromatic number

近年来,对于图着色的研究有许多[1-6]

,但关于图色数的求法并不多,多数文献是研究图的邻点可区别全色数的上界和图的一般邻点可区别全染色问题.本文借助利用组合数学中图转化成树的思想,从图中一顶点出发,按照图的邻接矩阵中各顶点间边存在的情况,建立各级树,根据要着色的顶点与已着色顶点间边存在的情况,给所要着色的顶点着色,当所有顶点都已着色后计算所用颜色个数就是图的色数.

定义[1]251 设G 是n 阶一般图,并令其顶点12, , , n a a a L 按某种顺序排列.A 是一个n n ´的矩阵,其第i 行第j 列元素ij a 等于连接顶点i a 和j a 的边的数目(1, )i j n ££.于是,总有ij ji a a =,而且ii a 等于顶点i a 处的环的个数,这样的矩阵A 称为G 的邻接矩阵.

算法 已知图G 所包含点的集合V 和所有边的集合E ,以及用来给图中各点着色的k 种颜色构成的集合{}12, , , k T B B B =L .

Step1 根据图G 所包含点的集合V 和所有边的集合E ,得出图G 的邻接矩阵A .

Step2 设S 表示点集V 中已被着色的点构成的集合,M 表示已给点着色的颜色构成的集合,初始值{}, {}S M ==.

Step3 设从点集V 中点1a 开始着色,给点1a 着1B 色,则{}{}11, S S a M M B ==U U .

Step4 以点1a 为树根,根据邻接矩阵A 中点1a 所对应行中元素值为1所对应点的情况,建立二级树

收稿日期:2017-08-10

基金项目:齐齐哈尔大学校教研项目(2017030)

作者简介:杨雅琴(1971-),女,吉林白城人,副教授,硕士,从事应用数学研究.E-mail:yyqcpy2008 @

(见图1),将点23, , , t a a a L 记入S 中,即{}23, , , t S S a a a =U L .

Step5 逐个选取点(2)p a p t ££,考察邻接矩阵A 中点p a 所对应行中元素值为1所对应点的情况,如果点p a 与S 中每一点都有边相连(邻接矩阵A 第p 行中与S 中所有点所在的列上的元素都为1),则给点p a 着T M -中新的颜色q B ,并将颜色q B 记入M 中,即{}

q M M B =U ;否则,检查点p a 与S 中没有边相连的点(邻接矩阵A 中第p 行中与S 中这点所在的列上的元素为0),记为pk a .若S 中和点pk a 着同色的点与点p a 都没有边相连,则点p a 与该点着同一颜色;否则,给点p a 着T M -中新的颜色q B ,并将颜色q B 记入M 中,即{}q M M B =U . Step6 在图1中分别以23, , , t a a a L 为树根,得到一些新的点()p p a a V S Î-,将点()p p a a V S Î-记入S 中,即{}p S S a =U ,重复Step5,直到S V =或M T =为止.

例1 求图2的色数.

解 已知图2的点集为{1, 2, 3, 4, 5}V =和边集E ,颜色集T ={红、蓝、黄、白、黑}.

(1)得到图2的邻接矩阵 12345

100111200101311011410101511110æö

ç÷=ç÷ç÷ç÷ç÷èø

A . (2)以点1为起始着色点,给点1着红色,{1}S =,M ={红},建立以点1为树根的二级树(见图3).

由于点3与S 中点1有边相连(邻接矩阵A 中第3行第1列元素为1),

因此从T M -中选取颜色给点3着色,点3着蓝色,{1, 2}S =,M ={红,

蓝};由于点4与S 中点1和点3有边相连(邻接矩阵A 中第4行第1列

元素和第4行第3列元素均为1),因此从T M -中选取颜色给点4着色,

点4着黄色,{1, 3, 4}S =,M ={红,蓝,黄};由于点5与S 中点1、点3和点4有边相连,因此给点5着白色,{1, 3, 4, 5}S =,M ={红,蓝,黄,白}; (3)建立三级树(见图4a),由于点2与集合S 上点1无边相连(邻

接矩阵A 中第2行第1列元素为0),给点2着与点1同色,即给点2着红色(见图4b). 此时{1, 3, 4, 5, 2}S V ==,所以,图2的色数是4.

有时不用写出图的邻接矩阵也可以求图的色数. 例2 求图5的色数. 解 已知图5的点集为{, , , , , , }V A B C D E F H =和边集E ,颜

色集T ={红,黄,蓝,白,黑,紫,绿}. (1)以点A 为起始着色点,给点A 着红色,{}S A =,M ={红},建

立以点A 为树根的二级树(见图6).

相关文档
最新文档