把结点集或边集划分为一些不相交的子集
点着色
- 色数:在这里插入代码片:图G需要着色的最小颜色数量
- k着色:使用k种颜色的结点
- 独立:如果S是G的结点子集,S中的任何一对结点都不相邻。独立数:最大独立集的元素数量
- 可唯一k着色:图G的色数为k,且只存在一种将G的结点划分为k个子集的方式
边着色
- 正常边着色:相邻两条边着色不同
- 单色三角形:只有一个颜色
- 双色三角形
- 矛盾结点:有两个结点都是和一条红色和一条蓝色边相关
应用
解决隔离问题
- 动物园设计
- 每个动物用结点表示,并用相应的字母表示
- 在有捕食关系的动物之间连一条线
- 期末考试安排
同一课程的不同班同时考试;
每门课程都有考试
教授必须监考自己的课程
如何使用最少的时间段 - 化学品存储
- 老师上课问题
老师给学生上课;
要求每周某老师T必须给某班学生S上X节课
实际是边着色问题
- 用加权二分图表示,一边为学生,一边为老师,加权边为课时X
- 因为每个老师同一时间只能给一个班上课;一个班上课时只能有一位老师,采用正常边着色
- **学生的最大结点度(最大权和)**即为至少需要的课时。(因为每条边的权重不一样,即可能某个时间某班不上课)