离散数学实验实验六

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
问题描述
一辆洒水车从所在的市政办点出发,需要在所有负责的街 道上洒水,并最后回到原点。问洒水车如何设计路线才能使 得走的路程最短。
问题分析
将这个问题抽象成图论的语言,就是给定一个连通图,每条 边的权值就是街道的长度,本问题转化为在图中求一条回路, 使得回路的总权值最小。
如果街道的连通图为欧拉图,则只要求出图中的一条欧拉回 路即可。否则,洒水车要完成任务就必须在某些街道上重复 走若干次。如果重复走一次,就加一条平行边,于是原来对 应的图形就变成了多重图。只是要求加进的平行边的总权值 最小就行了。于是,问题就转化为,在一个有奇度数结点的 赋权连通图中,增加一些平行边,使得新图不含奇度数结点, 并且增加的边的总权值最小。
编码:将复合命题转化成函数
示例 2)“A,E,F3人中有2人参加会议”
( A E F ) ( A E F ) ( A E F )
bool cond2(int a, int b, int c, int d, int e, int f) {
if( (!a && e && f) || (a && !e && f) || (a && e && !f) ) return true;
return false; }
求值:指定“去”或“不去”状态
数据结构: Int array[6] = {0, 0, 0, 0, 0, 0};
0, 0, 0, 0, 0, 0 0, 0, 0, 0, 0, 1 0, 0, 0, 0, 1, 0 …… 1, 1, 1, 1, 1, 1
A,B,C,F参加,D,E不参加
相关文档
最新文档