范式几个重要算法归类.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
几个重要算法: + 算法 1. 求属性集 X 关于函数依赖 F 的属性闭包 X 输入: R 的属性集 U,在 U上的函数依赖 F,U 的子集 X + 输出: F 的属性闭包 X 方法:计算 X (i )(I=0,1,2, …) (1)X(0)=X (2)X (i+1 )=X (i )∪A 其中 A 是这样的属性:在 F 中寻找尚未用过的左边是 X (i )子集的函数依赖: Yj-Zj(j=1,2 …k) 其中, Yj 属于 X (i ); 即在 Zj 中寻找 X (i )中未出现过的属性集合 A (3)判断是否有 X (i+1 )=X (i ),若是转( 4 );否则转( 2 ) + (4)输出 X (i ), 即为 X 对于( 3 )的计算停止条件,以下几种方法是等价的: (1) X (i+1 )=X (i ) (2) 发现 X (i )包含了全部属性时 (3) 在 F 中未用过的函数依赖左边属性已经没有( i )子集 算法 2 .计算最小依赖集. 输入.一个函数依赖集 F。 输出: F 的一个等价最小依赖集 G。 方法: (1) 应用分解规则,使 F 中每一个依赖的右部属性单一化 (2 ) 去掉各依赖左部多余的属性。具体做法是:一个一个地检查 F 中左边 是非单属 性的依赖 例如 XY -A,现在要判断 Y 是否为多余的, 则以 X — A代替 XY -A 是否等价? + + 只要在 F 中求 X .若 X 包含 A,则 Y 是多余的属性.否则 Y 不是多余属。依次判 断其 他属性即可消除各依赖左边的多余属性。 (3 )去掉多余的依赖、具体做法是。从第一个依赖开始 从 F 中去掉它(假 + + 设该依赖为 X—Y。然后在剩下的依赖中求 X .看 X 是否包含 Y,若是,则去掉 X—Y;若不包含 Y.则不能去掉 X—Y。 这样依次做下去。 算法 3:检验无损连接性。 输入;关系模式 R (AI ,A2.。。。An),它的函数依赖集 F 以及分解 p 输出 确定 P 是否具有无损连接性。 方法: (1) 构造一个 k 行 n 列的表,第 1 行对应于关系模式 Ri, 第 j 列对应于属性 Aj 。 如果 Aj 在 Ri 中,则在第 i 行第 j 列上放符号 aj, 否则放符号 bij 。 (2)逐个检查 F 中的每一个函数依赖.并修改表中的元素、其方法如下:取得 F 中一 个函数依赖 X-Y.在 X 的分量中寻找相同的行.然后将这些行中 Y 的分量改为 相同的符 号,如果其中有 aj ,则将 bij 改为 aj ;若其中无 aj ,则改为 bij 。 (3)这样反复进行.如果发现某一行变成了 a1,a2, …ak,则分解 p 具有无损连 接性. 如果 F 中所有函数依赖都不能再修改表中的内容, 且没有发现这样的行, 则分解 P不具有 无损连接性。 算法 4: 把一个关系模式分解为 3NF,使它具有依赖保持性。

文档评论(0)

ll17770603473 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档