- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信阳师范学院学报 (自然科学版)第 12 卷 第 3 期 1999 年 7 月Jou rna
信阳师范学院学报 (自然科学版)
第 12 卷 第 3 期 1999 年 7 月
Jou rna l of X inyang T each e r s Co llege
(N a tu ra l Science E d it ion)V o l. 12 N o. 3 J u l. 1999
传递闭包的算法及应用
α
侯云山1 , 许中华2 , 刘宏兵1
(1. 信阳师范学院 计算机系, 河南 信阳 464000; 2. 淮阳师范学校, 河南 淮阳 466700)
摘 要: 传递闭包是一种重要的关系运算。它在数据结构、编译理论和关系数据库中都有广泛
的应用。本文详细地探讨关系的传递闭包的概念、算法和应用。
关键词: 传递闭包; W A R SHA LL 算法; 语法分析 SQ L
中图分类号: O 157. 4; T P 311. 12 文献标识码: A 文章编号: 100320972 (1999) 0320347203
关系的运算包括关系的合成、关系的逆以及关系
的闭包运算等, 而在自反闭包、对称闭包和传递闭包 三种运算中尤以传递闭包最为复杂和重要, 由于一般 的教材只涉及到它的某个方面, 故难以令人对关系闭 包有一个比较完整和系统的认识。本文正是以此为出 发点, 力求给读者一个清晰全面的概念。
定义
设 R 为 A
上的二元关系, 如果有另一个
二元关系 R ′满足: a) R ′是传递的; b) 对任何传递的关
系 R ″, 如果有 R ″Β R , 就有 R ″Β R ′, 则称关系 R ′为 R
的传递闭包, 记作 t (R ).
一个传递关系 R 的传递闭包是 R 本身。
2 W a rsha ll 算法
求一个关系的传递闭包方法主要包括深度优先 搜索、W a r sh a ll 算法和二进位矩阵相乘法, 所有这些 算法在最坏情况下的时间复杂度为 o (n3 ) , 它们做不 同类型运算, 不同运算次数和不同形式输入数据工 作。我们这里主要讨论W a r sh a ll 算法 1
如果 A 上二元关系 R 用关系图表示, 则寻找关 系 R 的传递闭包 t (R ) 的元素相当于在有向图中插入
1 二元关系的传递闭包
设A 是一个含有元素 x 1 , x 2 , , x n 的有限集, 则 A 上的二元关系 R 是笛卡尔积 A ×A 的一个子集, R 中的任一序偶可写为 x i, x j ∈R 或 x iR x j。
关系可以用关系矩阵或关系图表示, 如果用关系 矩阵, 则关系 R 的关系矩阵M R 为
M R = rij ]n×n , i, j = 1, 2,
1, 若 x i , x j ∈R
, n,
边。 特别是, 对已插入的一对边x ix k 和x k x j , 我们加进
rij =
0, 反之
边x ix j。这就是说, 如果我们已知对某个 k 有 x iR x k 和
x kR x j , 则能得出结论 x iR x j。
记M R 为 R 的关系矩阵,M t (R ) 为 R 的传递闭包
t (R ) 的关系矩阵, 则不难利用下述算法可以求出
t (R )。
11M t (R ) ←M R
2. fo r k = 1 to n
3. fo r i= 1 to n
如果 运用关系图, 则 R 的关系图构造如下: 在平
面上用 n 个结点分别表示 x 1 , x 2 , , x n. 如有 x iR x j ,
则自结点 x i 至结点 x j 处作一有向弧, 箭头指向 x j.
下面看一下传递的定义: R 在A 上传递Ζ (x ∈A
∧y ∈A ∧z ∈A ∧x R y ∧y R z →x iR x j ).
有了传递的定义, 我们来进一步引入传递闭包的 定义:
α 收稿日期: 1999203207
作者简介: 侯云山( 19732) , 男, ( 汉) , 河南省驻马店人, 信阳师范学院助教, 学士.
HYPERLINK ki.ne/ ? 1994-2013 China Academic Journal Electronic Publishing House. All rights reserved. ki.ne
每个字母连续应用上述规则可能推出的头字符。显然 R 的关系矩阵为4. fo r j = 1 to nif rik = 1 and
每个字母连续应用上述规则可能推出的头字符。
显然 R 的关系矩阵为
4. fo r j = 1 to n
if rik
文档评论(0)