图的模型与算法初步

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

返 回
上一页
下一页
主 页
算法的时间复杂性分析
算法的时间复杂度——从输 入数据到计算出结果所需要的时 间,它是输入长n(问题规模) 的一个函数。
V 摆渡人Ferryman O O S V
W S
WV W
WV
狼Wolf 羊Sheep 菜Vegatable
上一页 下一页 主 页
人狼羊菜渡河问题
FWSV FWS FWV FSV FS

O
V
S
W
WV
1. 渡 河 方 案 对 应 于 图 中 从 顶 点 “FWSV”到顶点“O”的链路? 2.寻求图中从顶点“FWSV”到顶点 “O”的最短路径,这样的路径有几 条?求出最优的渡河方案。
一种表示工具——图
有向图:
V1
V2 V3 V5

V4
你能给出一个可用有向图 描述的实际例子吗?
上一页 下一页 主 页
一种表示工具——图
加权图
1
4
8
1
5
5
2
7 6 10
3
3
9 这些数字可以代表距离,费用,可 靠性或其他的相关参数。
返 回 上一页 下一页 主 页
一种表示工具——图
定义 若图 G (V (G ), E (G )) 的每一条边e 都赋以
2) 判断r是否为0。 若r=0,则算法终止; 否则,转3)。 3) 互换。 置mn,nr,返回 第一步
返 回 上一页 下一页 主 页
算法无效
用行列式的定义求一个20阶 行列式的值,即使是每秒1000万 次的计算机也要花大约15万年的 时间。
上一页
下一页
主 页
好算法还是坏算法

如何才能简便地判断一个 算法的有效性呢?在什么情况 下一个问题找不到有效算法来 求出正确解?
2) 若通路W的边互不相同但顶点可重复,则称W 为迹或道路.
3) 若通路W的顶点和边均互不相同,则称W为路径 记为P(v0 , vk ).
返 回 上一页 下一页 主 页
路径与连通
定义 1) 起点与终点重合的通路称为闭通路. 2) 起点与终点重合的的路径称为圈,长 为k的圈称为k阶圈,记为Ck. 3) 若在图G中存在(u,v)路径,则称顶点u和v在图G 中连通. 4) 若在图G中顶点u和v是连通的,则顶点u和v之 之间的距离d(u,v)是指图G中最短(u,v)路径的长;若 没有路径连接u和v,则定义为无穷大. 5) 图G中任意两点皆连通的图称为连通图.
S G R
N
M P
一个时间安排问题
S
2 3 1
N
2
G R
3 2
M
P

用尽可能少的时段数安排 这6门课的时间表,使没有 同学发生冲突。
返 回 上一页 下一页 主 页
人狼羊菜渡河问题
南岸状态:C44+ C43 FWS 42 + C4FSV C40 + C FWV 1 + FS FWSV 10种允许状态: =24=16种,其中WS,SV,WSV,从而FV,FW,F FWSV 为不允许状态 FWS FWCV FSV FS
图的表示与算法初步
参考书: 1.傅鹂 龚劬 刘琼荪 何中市 《数学实验》科学出版社 2.张绍民 李淑华 《数据结构教程C语言版》中国电力出版社 3.王晓东 《算法设计与分析》 清华大学出版社 主讲:龚 劬 制作:龚 劬
主要内容
图的模型
图的矩阵表示方法
算法初步 布置实验
结束
上一页 下一页 主 页
图的模型
一个实数w(e),称w(e)为边e的权,G 连同边上的权 称为赋权图. 定义 设 G (V , E ) 和 G (V , E) 是两个图. 1) 若V V , E E ,称 G是 G 的一个子图,记 G G.
E 2) 若 V V, E ,则称 G是 G 的生成子图.
上一页 下一页 主 页
一个时间安排问题
S 陈奇峰 郭志伟 黄大度 李春兰 李祖军 刘昆 欧阳金 史武军 万华 王润惠 姚南 郑文国 邹文燕 N 陈俊 陈奇峰 董舟 黄大度 李白彤 李欣 刘元元 刘云 王凯 于洪 赵云 甄军 邹鑫 G 曹林军 陈修建 胡志强 化范文 李白彤 李出荣 李晓 欧阳金 万华 曾光伟 张惠 张敏 赵云 M 查小辉 程静波 单富民 董舟 邵桂芳 王坚 王学权 卫迎新 吴军 夏雯 杨欣 张星 邹文燕 R 陈修建 刘元兵 邱吉洲 息志强 杨成宝 赵小民 邹鑫 P 陈俊 樊雪峰 姜永东 刘伟 许茂 甄军 周清武
上一页 下一页 主 页
人狼羊菜渡河问题
FWSV FWS FWV FSV FS
O
V
G
W
WV FSV
S O
主 页
V
FWSV WV FWV
W
FWS
返 回 上一页
FS
下一页
图的矩阵表示方法
邻接矩阵 可达性矩阵
关联矩阵
边矩阵 邻接顺序表
返 回 上一页 下一页 主 页
邻接矩阵
v1 b a v j 3 k v2 c d e f v5 h v6 i v4 g v7
主 页
关联矩阵
无向图的关联矩阵:M=(mij)nm, 其中

1 若v i 与e j相关联, m ij 0 若v i 与e j不相关联
无向图的关联矩阵有哪些特征?由 关联矩阵能否作出原图?
返 回 上一页 下一页 主 页
边矩阵
v1
无向或有向加权图
定义一个m列的矩阵第1、2 行分别存放边的起点和 终点, 如为加权图, 只需增加一行数来 表示各条边上的权.
图论的起源——七桥问题 一个时间安排问题 人、狼、羊、菜渡河问题
上一页
下一页
主 页
图论的起源:七桥问题
上一页
下一页
主 页
图论的起源:七桥问题
a
graph
a
b d c b d
上一页 下一页 主 页
c
一种表示工具——图
无向图
边 a e1 e3 e2 c e4 b e5 顶点
d
三要素:顶点集V;边集E;关联函数 如 (e1)={a,b}, G=(V,E,) 一般用大写字母G,H表示无向图。
对有向赋权图 G (V , E ), 其邻接矩阵 A (aij ) , wij , 若(vi , v j ) E , 且wij为其权, 其中: aij 0, i j, , 若(vi , v j ) E.
u1 u2
u3 u4
0 3 7 8 u1 0 u 2 A 6 0 u3 4 0 u 4
时间复杂度
有效算法 量级比较
返 回 上一页 下一页 主 页
什么是算法
一个算法就是解决某一特定问题 的方法,是一系列确定步骤,它必须 在有限的时间内终止。 表述一个算法一般有两种方式 (1) 步骤描述; (2) 框图。
上一页 下一页 主 页
什么是算法
例:求两个正整数m和n的最大公因子 的Euclid算法 输入:正整数m, n。 输出:m和n的最大 公因子。 1) 求余数 m除以n,令r为所 得的余数 (0r<n)。
上一页 下一页 主 页
一种表示工具——图
无向图 e与顶点u, v相关联 u与v相邻 两边相邻 a 重边
c b
d

你能给出一些可用无向图 描述的实际例子吗?
上一页 下一页 主 页
一种表示工具——图
任何两个以上的人组成的人群中,至少有两个人, 他们的朋友数一样多。 在一次象棋比赛中,若每名选手与其余选手都比 赛过,人数是n,求总盘数。 设S=(x1,,x2,…,xn)是平面上的点集,其中 任意两点间的距离至少是1,证明:距离正好是1的点 对数最多为3n。 在n个运动队间安排了一项竞赛,已赛n+1局,试 证:存在一个队,它至少参加过3局比赛。
c 0 1 0 0 1 0 0
d 0 1 0 0 0 1 0
e 0 0 1 0 0 1 0
f 0 0 0 1 0 1 0
g 0 0 0 1 0 0 1
h 0 0 0 0 1 1 0
i 0 0 0 0 0 1 1
j 0 1 1 0 0 0 0
k 0 0 1 1 0 0 0
上一页
下一页
1, 若(vi , v j ) E , aij 0, 若(vi , v j ) E.
u1 u2 0 0 A 0 0
u3 u4
1 1 1 u1 0 0 0 u2 1 0 0 u3 0 1 0 u4
上一页 下一页 主 页
邻接矩阵
对于n=2,3,4,…来说,考察邻接矩阵A的幂An. 邻接矩阵A中的第i行、第j列的元素为1,说明图中存在一 条边(ui, uj),即存在一条从顶点ui到uj长度为1的路径。 矩阵A2中的第i行、第j列的元素aij(2)为
返 回 上一页 下一页 主 页
路径与连通
定义 1) 无向图G的一条通路是指 一个有限非空序列 W v0e1v1e2 ek vk ,它的项交替 地为顶点和边,使得对 1 i k,ei的端点是 vi 1和 vi , 称W是从v0 到 vk 的一条通路,整数k称为W的长. 顶点 v0 和 vk 分别称为W的起点和终点 .
b a v v4 3 k j v2 g d e f c
v5 h v6 i v7
a b c d e f g h i j k 1 1 2 2 3 4 4 5 6 2 3 E 2 4 5 6 6 6 7 6 7 3 4
返 回 上一页 下一页 主 页
好算法还是坏算法
什么是算法
算法无效 算法的时间复杂性分析
上一页 下一页 主 页
一个时间安排问题
学校要为一年级的研究生开设六门 基础数学课:数理统计(S),数值分析 (N),图论(G),矩阵论(M),随机过程(R) 和数理方程(P)。按培养计划,注册的学 生必须选修其中的一门以上,你作为教 务管理人员,要设法安排一个课表,使 每个学生所选的课程,在时间上不会发 生冲突。
1 2 3 4 5 6 7 1 0 1 0 1 0 0 0 2 1 0 1 0 1 1 0 3 0 1 0 1 0 1 0 4 1 0 1 0 0 1 1 5 0 1 0 0 0 1 0 6 0 1 1 1 1 0 1 7 0 0 0 1 0 1 0
பைடு நூலகம்
上一页
下一页
主 页
1, 如果vi到v j 至少存在一路, pij 0, 如果vi到v j 不存在任何路.
上一页
下一页
主 页
关联矩阵
v1 b a v v4 3 k j v2 g d e f c
1 2 3 4 5 6 7
v5
h
v6 i
v7
a 1 1 0 0 0 0 0
b 1 0 0 1 0 0 0
(2) aij aik akj k 1 n
aij(2)等于从顶点ui到uj长度为2的不同路径的数目。 定理 设G=(V,E)是一简单有向图,且A是G的邻接矩阵, 对于m=1,2,3,…来说,矩阵Am中(i,j)元素的值,等于从 顶点ui到uj长度为m的路径数目。
上一页 下一页 主 页
邻接矩阵
上一页 下一页 主 页
一种表示工具——图
一些特殊的图
1) 既没有环也没有重边的图,称为简单图. 2) 任意两顶点都相邻的简单图,称为完全图. 记为Kv
K6
上一页 下一页 主 页
一种表示工具——图
3) 若 V (G) X Y X Y , ,且X 中任意两顶点 不 相邻,Y 中任意两顶点不相邻,则称为二部图或
偶图;若X中每一顶点皆与Y 中一切顶点相邻,称为 完全二部图或完全偶图,记为 K m,n (m=|X|,n=|Y|). X : x1 x2 x3 X : x1 x2 x3 你能给出
一些可用 二部图描 述的实际 例子吗?
上一页 下一页 主 页
Y : y1 y2 y3 y4 二部图
Y : y1 y2 y3 y4 K 3, 4
邻接矩阵
无向图的邻接矩阵:A=(aij)nn, 其中

1 当v i 与v j相邻, a ij 0 当v i 与v j不相邻
无向图的邻接矩阵有何特点?由 邻接矩阵是否能作出原图?
返 回 上一页 下一页 主 页
邻接矩阵
对有向图 G (V , E ) ,其邻接矩阵 A (aij ) ,其中:
上一页 下一页
对于无 向赋权 图的邻 接矩阵 可类似 定义.
主 页
可达性矩阵
给定一个简单有向图G=(V,E), 由G的邻接矩阵能够 直接确定,G中是否存在一条从顶点vi到顶点vj的边。
构造矩阵Bn=A+A2+…+An,
其中的(i,j)元素值,表明了从顶点vi到顶点vj长度小于 或等于n的路径数目。如果(i,j)元素非零,则从vi到vj 是可达的。 给定一个简单有向图G=(V,E), n=|V|,定义路径矩阵 p=(pij)nn, 使其元素为
相关文档
最新文档