精华内容
下载资源
问答
  • 关于数据库的 最小函数依赖集求法.对数据库的初学者有帮助。
  • 求最小依赖集

    千次阅读 多人点赞 2020-04-28 09:27:07
    ,U={A,B,C,D,E},F={A→BC,ABD→CE,E→D},F的最小依赖集。 第一步:F右边单一化 得到F1={A→B,A→C,ABD→C,ABD→E,E→D} 第二步:逐个去掉X→A依赖后,设剩下函数依赖集为G,属性集X关于G的闭包,...

    【例1】关系模式R<U,F>,U={A,B,C,D,E},F={A→BC,ABD→CE,E→D},求F的最小依赖集。

    第一步:F右边单一化
    得到F1={A→B,A→C,ABD→C,ABD→E,E→D}

    第二步:逐个去掉X→A依赖后,设剩下函数依赖集为G,求属性集X关于G的闭包,如果闭包包含右边属性A,则去掉该函数依赖。

    A→B:(A)+=AC,不包含B,保留。

    A→C:(A)+=AB,不包含C,保留。

    ABD→C:(ABD)+=ABCDE,包含C,去掉。

    ABD→E:(ABD)+=ABCD,不包含B,保留。

    E→D:(E)+=E,不包含D,保留。
    (在这里,求闭包的时候,不能再用前面去掉的函数依赖了,所以最小依赖集不唯一,写出一个即可。)

    所以F2={A→B,A→C,ABD→E,E→D}

    第三步:对左边属性单一化,X=B1B2...Bi,逐个用B1→A替代原依赖X→A,判断属性集(X-B1)关于F的闭包,如果包含A则用X-B1代替X。

    ABD→E:A→E,求(BD)+=BD,不包含E,不冗余
                     B→E,求(AD)+=ABCDE,包含E,存在冗余则使用AD→E替换ABD→E
                     D→E,求(AB)+=ABC,不包含E,不冗余

    所以F3={A→B,A→C,AD→E,E→D}
    继续第三步
    AD→E:A→E,求(D)+=D,不包含E,不冗余
                   D→E,求(A)+=ABC,不包含E,不冗余

    所以最小依赖集Fm={A→B,A→C,AD→E,E→D}

    原文链接:https://blog.csdn.net/Long_H_Zhu/article/details/93725797

    https://blog.csdn.net/breathN/article/details/88432401

    展开全文
  • 最小依赖集 (解法+例题)

    千次阅读 多人点赞 2020-12-01 14:36:25
    一、求最小依赖集的算法 ①根据推理规则的分解性,右部最小化 ②消除左边的冗余属性 ③消除冗余的FD(依赖) 重点:操作步骤的顺序不能颠倒,颠倒了可能消除不了FD中左边冗余的属性,或冗余的依赖。 二、具体操作...

    最小依赖集 (解法+例题)

    网上看了很多最小依赖集的解法和例题,许多都存在错误,故自己参考总结写了一篇,如果有错误,感谢指正。

    一、求最小依赖集的算法

    ①根据推理规则的分解性,右部最小化

    ②消除左边的冗余属性

    ③消除冗余的FD(依赖)

    重点:操作步骤的顺序不能颠倒,颠倒了可能消除不了FD中左边冗余的属性,或冗余的依赖。

    二、具体操作详解(以下两种意思相同,表述略有区别罢了)

    (1)右部最小化:右切,使每个函数依赖的右部仅有一个属性
    (2)规则最小化:除本求包(对每个函数依赖的左部做除本求包,求包的结果如果不包含本函数依赖的右部,本函数依赖保留;求包的结果如果包含了本函数依赖的右部,删除本函数依赖)
    (3)左部最小化

    注意,解题一定要先(3)后(2)

    三、例题,反例等

    反例,假如将②③步骤颠倒

    例:求**F={ABD→AC,C→BE,AD→BF,B→E}**的最小函数依赖集 F m F_m Fm

    注意:当在函数依赖已经改变的地方开始一个新步骤时,重写函数依赖集很重要,这样可以在下一步中方便引用。

    第一步 对F中的函数依赖运用分解原则来创建一个等价函数依赖集H,该集合中每一个函数依赖的右部是单个属性:

    H={①ABD→A,②ABD→C,③C→B,④C→E,⑤AD→B,⑥AD→F,⑦B→E}

    第二步 考察每一个函数依赖是否是必须的,去除非必要的函数依赖

    (1)ABD→A是平凡的函数依赖(就是A是ABD的子集,所以他是平凡的依赖),所以显然是非必要的函数依赖,因此去除。保留在H中的函数依赖是H={②ABD→C,③C→B,④C→E,⑤AD→B,⑥AD→F,⑦B→E}

    (2)考察ABD→C,去掉此函数依赖将会得到新的函数依赖集J={③C→B,④C→E,⑤AD→B,⑥AD→F,⑦B→E}。如果ABD→C是非必要的,则 ( A B D ) J + (ABD)_J^+ (ABD)J+=ABDFE,不包含C,因此ABD→C是必要的函数依赖,不能去掉。

    H={②ABD→C,③C→B,④C→E,⑤AD→B,⑥AD→F,⑦B→E}

    (3)考察C→BJ={②ABD→C,④C→E,⑤AD→B,⑥AD→F,⑦B→E},则** C J + C_J^+ CJ+=CE**,不包含B,因此C→B是必要的函数依赖,保留在H中。

    (4)考察C→EJ={②ABD→C,③C→B,⑤AD→B,⑥AD→F,⑦B→E},则 C J + C_J^+ CJ+=CBE,包含E,因此是不必要的,去除后得到的函数依赖集为H={②ABD→C,③C→B,⑤AD→B,⑥AD→F,⑦B→E}

    (5)同理考察函数依赖⑤、⑥和⑦,最后得到的函数依赖集为H={②ABD→C,③C→B,⑤AD→B,⑥AD→F,⑦B→E}。为了第三步方便引用,我们进行重新编号:

    H={①ABD→C,②C→B,③AD→B,④ AD→F,⑤ B→E}。

    第三步 考察每一个左部为多个属性的函数依赖,看左部的每个属性是否是必须的,能否用更小的属性集替代原有的属性集。

    首先从函数依赖①ABD→C开始。

    (1)去除A?

    如果A可以去除,那么可得到新的函数依赖集J={①BD→C,②C→B,③AD→B,④ AD→F,⑤ B→E}。去掉A后BD在J上的闭包将比在H下函数决定更多的属性,如果 ( B D ) J + (BD)_J^+ (BD)J+= ( B D ) H + (BD)_H^+ (BD)H+或者C∈ ( B D ) H + (BD)_H^+ (BD)H+,则说明去掉A得到的函数依赖集和原有的函数依赖集是等价的,可以用BD→C替换ABD→C。

    ( B D ) H + (BD)_H^+ (BD)H+=BDE,不包含C,所以A不能去掉。

    (2)去掉B?

    J={①AD→C,②C→B,③AD→B,④ AD→F,⑤ B→E} 。

    ( A D ) H + (AD)_H^+ (AD)H+=ADBC,包含了B,因此B→C是冗余的函数依赖,所以去除

    (3)去掉D?J={①A→C,②C→B,③AD→B,④ AD→F,⑤ B→E}。

    因为H的函数依赖集在第三步发生了改变,因此我们需要回到第二步。如果顺序颠倒,则在消除左部冗余使F发生变化后,需要重新进行消除函数依赖的操作

    此时H={①AD→C,②C→B,③AD→B,④ AD→F,⑤ B→E}。

    在进行第二步即重新进行消除函数依赖操作

    其中考察到③,有 ( A D ) H + (AD)_H^+ (AD)H+=ADCB,包含B,因此AD→B是不必要的函数依赖,所以去除

    最后

    得到的函数依赖集为H={AD→C, C→B, AD→F, B→E}


    例题:已知关系模式R(U,F),U={A,B,C,D,E,F,G},F={BCD→A,BC→E,A→F,F→G,C→D,A→G},求F的最小函数依赖集。

    原参考省略了左部最小化的步骤,现我将其补上,仅供参考

    ③左部最小化

    经过右部最小化和消除冗余依赖后F={BCD→A,BC→E,A→F,F→G,C→D}

    针对BCD→A

    1. 去B? 则 ( C D ) F + (CD)_F^+ (CD)F+=CD,无A,保留
    2. 去C? 则 ( B D ) F + = B D (BD)_F^+=BD (BD)F+=BD,无A,保留
    3. 去D? 则 ( B C ) F + = B C D A E F G (BC)_F^+=BCDAEFG (BC)F+=BCDAEFG,有A,则D冗余,可以去掉。

    所以F={BC→A,BC→E,A→F,F→G,C→D}

    针对BC→E

    1. 去B 则 C F + C_F^+ CF+=CD,保留
    2. 去C 则 B F + B_F^+ BF+=B,保留

    所以F={BC→A,BC→E,A→F,F→G,C→D}

    但是

    由于操作顺序颠倒,还需要进行冗余依赖的判断,判断后发现现在依赖保持不变。

    所以F={BC→A,BC→E,A→F,F→G,C→D}


    四、其他例题

    例题一

    例题二

    例题(注意:本题由于顺序错误,导致了错误,纸质的部分进行了修改,但还是放出来以便大家更好的理解)

    展开全文
  • 最小函数依赖集求法.doc
  • 最小函数依赖集 关系模式R(U,D,DOM,F) R:关系名,符号化的元组定义 U:一组属性 D:属性组U中的属性所来自的域 DOM:属性到域的映射 F:属性组U上的一组数据依赖 函数依赖集的闭包 F:FD(Functional ...

    目录

    关系模式

    函数依赖的闭包

    属性集闭包

    求候选键算法

    最小函数依赖集


    关系模式R(U,D,DOM,F)

    R:关系名,符号化的元组定义

    U:一组属性

    D:属性组U中的属性所来自的域

    DOM:属性到域的映射

    F:属性组U上的一组数据依赖

    函数依赖集的闭包

    F:FD(Functional Dependency)的集合称为函数依赖集。

    F闭包:由F中的所有FD可以推导出所有FD的集合,记为F+。

     

    例1,对于关系模式R(ABC),F={A→B,B→C},求F+。

    根据FD的定义,可推出F+={φ→φ,A→φ,A→A,A→B,A→C,A→AB,A→BC,A→ABC,…},共有43个FD。其中,φ表示空属性集。

     

    属性集闭包

    属性集闭包定义 :
    对F,F+中所有X→A的A的集合称为X的闭包,记为X+。可以理解为X+表示所有X可以决定的属性。

    属性集闭包的算法:

    A+:将A置入A+。对每一FD,若左部属于A+,则将右部置入A+,一直重复至A+不能扩大。

     

    设K为R(U,F)中的属性或属性集合,

    候选码:若U对K完全函数依赖。则K为R的候选码。

    超码:若U对K部分函数依赖。则K为R的超码,候选码是最小的超码。若候选码多余一个,则选择一个作为主码

     设关系模式R中U=ABC.......等N个属性,U中的属性在FD中有四种范围:

    (1)左右出现;

    (2)只在左部出现;

    (3)只在右部出现;

    (4)不在左右出现;

     

     求候选键算法:

    1.R:只在FD右部出现的属性,不属于候选码;

    2.L:只在FD左部出现的属性,一定存在于某候选码当中;

    3.N:外部属性一定存在于任何候选码当中;

    4.其他属性逐个与2,3的属性组合,求属性闭包,直至X的闭包等于U,若等于U,则X为候选码。

    例2,对于关系模式R(ABCD),F={A→B,B→C,D→B},求其候选键。

    先按照属性集闭包的算法,求各个闭包,然后求得候选键。

    (1)      求A+。 

    ①       A+=A。 
    ②       由A→B,而A €A+可知,则A+=AB。

    ③       由B→C,而B  A+可知,则A+=ABC。

    ④       A+封闭,即A+=ABC。

    (2) 求B+、C+、D+。 

    按步骤(1)可得:B+=BC,C+=C,D+=BCD。

    (3) 求其候选键。 显然,R的候选键为AD。

    例3,对于关系模式R(ABC),F={A→BC,BC→A},求其候选键。

    (1)   求属性的闭包。 
    按例2可得:A+=ABC,B+=B,C+=C。 

    (2)    求属性集的闭包。 
    由BC→A,则(BC)+=ABC,其余属性集闭包为属性闭包的并集。

    (3)   求其候选键。 显然,R的候选键为A和BC。

     

    最小函数依赖集

    定义:如果函数依赖集F满足以下条件,则称F为一个极小函数依赖集。也称为最小依赖集或最小覆盖。

    (1)F中任一函数依赖的右部仅含有一个属性。

    (2)F中不存在这样的函数依赖X→A,使得F与F-{X→A}等价。

    (3)F中不存在这样的函数依赖X→A,X有真子集Z使得F-{X→A}U{Z→A}与F等价。

    最小依赖集通用算法:

    ① 用分解的法则,使F中的任何一个函数依赖的右部仅含有一个属性;

    去掉多余的函数依赖:从第一个函数依赖X→Y开始将其从F中去掉,然后在剩下的函数依赖中求X的闭包X+,看X+是否包含Y,若是,则去掉X→Y;否则不能去掉,依次做下去。直到找不到冗余的函数依赖;

    ③ 去掉各依赖左部多余的属性。一个一个地检查函数依赖左部非单个属性的依赖。例如XY→A,若要判Y为多余的,则以X→A代替XY→A是否等价?若A属于(X)+,则Y是多余属性,可以去掉。

    例4、求F={A→B,B→A,B→C,A→C,C→A},最小(极小)函数依赖集合

    1、利用分解规则,将所有的函数依赖变成右边都是单个属性的函数依赖。从题目来看,F中的任何一个函数依赖的右部仅含有一个属性:
    {A→B,B→A,B→C,A→C,C→A}

    2、去掉F中多余的函数依赖

    (1)设A→B冗余,从F中去掉A→B,则F1={B→A,B→C,A→C,C→A}。计算(A)F1+:设X(0)=A,计算X(1):扫描F1中各个函数依赖,找到左部为A或A子集的函数依赖,A→C。故有X(1)=X(0)U C=AC;扫描F1中各个函数依赖,找到左部为AC或为AC子集的函数依赖,C→A,X(2)=X(1)U C=AC.但AC不包含B,故A->B不能从F中去掉。

    (2)设B→A冗余,从F中去掉B→A,则F2={A→B,B→C,A→C,C→A}。计算(B)F2+:设X(0)=B,计算X(1):扫描F2中各个函数依赖,找到左部为B或者B子集的函数依赖,B→C.故有X(1)=X(0)U C =BC;扫描F2中各个函数依赖,找到左部为BC或为BC子集的函数依赖,C->A,X(2)=X(1)U A=ABC.X(2)包含所有属性,故B→A可从F中去掉。

    (3)设B→C冗余,从F中去掉B→C,则F3={A→B,A→C,C→A}。计算(B)F3+:扫描F3中各个函数依赖,找不到左部为B或B子集的函数依赖,因为找不到这样的函数依赖,故有X(1)=X(0)=B,(B)F1+= B不包含C,故B→C不是冗余的函数依赖,不能从F1中去掉。

    (4)设A→C冗余,从F中去掉A→C,则F4={A→B,B→C,C→A}。计算(A)F4+:设X(0)=A,计算X(1):扫描F4中各个函数依赖,找到左部为A或A子集的函数依赖,A→B。故有X(1)=X(0)U B=AB;扫描F4中各个函数依赖,找到左部为AB或为AB子集的函数依赖,B→C,X(2)=X(1)U C=ABC.X(2)包含所有属性,故A→C可从F中去掉。

    (5)设C→A冗余,从F中去掉C→A,则F4={A→B,B→C}。计算(C)F5+:设X(0)=C,计算X(1):扫描F5中各个函数依赖,找到左部为C或C子集的函数依赖,找不到左部为C或C子集的函数依赖,因为找不到这样的函数依赖,故有X(1)=X(0)=C,(B)F1+= C不包含A,故C→A不是冗余的函数依赖,不能从F中去掉。

    (6)至此,所有依赖均以验算完毕,故F最小(极小)函数依赖集合为:{A→B,B→C,C→A}

      转载自原文作者:itwolf

    展开全文
  • 数据库求最小函数依赖集最小覆盖)

    千次阅读 多人点赞 2020-03-03 21:57:11
    4.对每一个X->A,暂时将其去除得到N,在N中X的闭包,如果闭包包含A,那么就从G中移除X->A 还不懂??来到题你就懂了 主要看步骤3,4。 3有解释,我来说一下4:E->D被移除了,来看看为什么被移除。 首先去除...

    在这里插入图片描述在这里插入图片描述
    这个英文流程反而清晰,主要过程如下
    1.设置G=F;

    2.右边属性单一化(这个很容易理解,网上的教学第一步都是这个),即对属性集中每一个X->(A1…An),将其拆为 X->A1,X->A2…,X->An

    3.对每一个X->A,对X中的每一个属性B,计算去除B之后的X在G中的闭包,如果闭包包含A,那么就用去除B之后的X替换之前的X,注意此步实际上是两个for循环,而且此步仅需针对属性个数大于1的X就行了

    4.对每一个X->A,暂时将其去除得到N,在N中求X的闭包,如果闭包包含A,那么就从G中移除X->A

    还不懂??来到题你就懂了
    在这里插入图片描述
    在这里插入图片描述
    主要看步骤3,4。 3有解释,我来说一下4:E->D被移除了,来看看为什么被移除。
    首先去除E->D得到N={A->C,A->D,E->A,E->H},在N中求E的闭包为E,A,D,是包含D的,所以E->D被移除。剩余的为什么没去除?自己按这个流程操作就知道了

    什么?闭包怎么求?

    说通俗一点:闭包就是由一个属性直接或间接推导出的所有属性的集合。

    展开全文
  • 如果函数依赖集F满足下列条件,则称F为一个极小函数依赖集,亦称为最小依赖集或最小覆盖(minimal cover)。 (1)F中任一函数依赖的右部仅含有一个属性 (2)F中不存在这样的函数依赖X->A,使得F与F-{X->A}...
  • 最小函数依赖集的求解过程

    千次阅读 2020-12-08 18:54:29
    ①先拆右边,假如依赖集F中的右边项包含不止一个属性,那么将这些项都拆为单个项。例如A->BC,拆分为A->B和A->C ②去除冗余依赖项,例如A->C和AB->C,那么就要去除AB->C这个冗余项 ③拆左边,假如...
  • 求最小函数依赖集

    2020-05-11 17:15:36
    例1:关系模式R(U,F)中,U=...F的最小函数依赖集 (1)用分解的法则,使F中的任何一个函数依赖的右部仅含有一个属性;得到:F={B->D,DG->C,BD->E,AG->B,ADG->B,ADG->C}; (2)去掉多余的函
  • 求最小函数依赖集的方法

    万次阅读 多人点赞 2011-01-15 23:47:00
    求最小函数依赖集分三步: 1.将F中的所有依赖右边化为单一元素 此题fd={abd->e,ab->g,b->f,c->j,cj->i,g->h};已经满足 2.去掉F中的所有依赖左边的冗余属性. 作法是属性中去掉其中的一个,看...
  • 主码求法,范式判断,最小函数依赖求法

    千次阅读 多人点赞 2019-05-08 18:45:21
    数据库中主码求法,NF判断,最小函数依赖
  • 【闭包就是由一个属性直接或间接推导出的所有属性的集合】  例(1): 设有关系模式R(U,F),其中U={A,B,C,D,E,I},... (2)在F中寻找尚未使用过的左边是AE的子集的函数依赖,结果是: A→D, E→C;所以 X(1...
  • 说明最小依赖集不唯一 */ 所以有 F2={BD→G,CD→A,CE→G,CDE→B,B→D} ③左边单一化,判断冗余,若冗余则代替 对于BD→G : { B→G,(B)+ =BD,闭包含属性D,所以D冗余 ; D→G, (D)+ = D, 闭包不含属性B,B不...
  • 一个是最小依赖函数,一个是候选码,一个是闭包,一个是要把关系模式分解成3NF且保持函数依赖,一个是分解成3NF且保持函数依赖和无损连接。 记录一下我对这几个问题的求法。可能会有哪里有漏洞,希望可以指...
  • 求最小函数依赖/最小覆盖Fm的方法之一: 1、把右部分化为单属性 2、去掉左部分的冗余属性 例如XY→A,假设Y是多余的,看A是否属于(X)+,若是,则Y是多余属性,可以去掉。 3、去掉冗余的函数依赖 从第一个函数依赖X→...
  • 图像分割综述

    万次阅读 多人点赞 2019-07-09 22:03:48
    其基本思想是,先定义初始曲线C,然后根据图像数据得到能量函数,通过最小化能量函数来引发曲线变化,使其向目标边缘逐渐逼近,最终找到目标边缘。这种动态逼近方法所求得的边缘曲线具有封闭、光滑等优点。 ​ ...
  • MySQL 面试题

    万次阅读 多人点赞 2019-09-02 16:03:33
    MySQL 面试题 MySQL 涉及的内容非常非常非常多,所以面试题也容易写的杂乱。当年,我们记着几个一定要掌握的重心: 重点的题目添加了【重点】前缀。 索引。 ...因为 MySQL 还会有部分内容和运维相关度比较高,所以...
  • ubuntu使用教程

    万次阅读 多人点赞 2020-01-15 17:53:05
    dpkg本身是一个底层的工具,本身并不能从远程包仓库下载包以及处理包的依赖的关系,需要将包从远程下载后再安装。 DPKG常用命令: dpkg - i package . deb 安装包 dpkg - r package 删除包 dpkg - P package ...
  • 函数依赖集最小闭包

    千次阅读 2007-08-12 04:58:00
    合并、交、差、补等运算。全集和子集的概念。1.2 关系数据库模型定义1 域是一组具有相同数据类型的值的集合。定义2 序偶的定义:={{x},{x,y}}。定义3 三元组是一个序偶,即:=>;那么n元组也是一个序偶:=xn>。...
  • 前端面试题

    万次阅读 多人点赞 2019-08-08 11:49:01
    已知有字符串foo=”get-element-by-id”,写一个function将其转化成驼峰表示”getElementById”。 56 var numberArray = [3,6,2,4,1,5]; (考察基础API) 57 输出今天的日期,以YYYY-MM-DD的方式,比如今天...
  • 测试开发笔记

    万次阅读 多人点赞 2019-11-14 17:11:58
    测试计划 集成测试阶段 概要设计子项 测试方案 具体内容 测试用例 整个系统最小单元 详细设计 函数 测试计划 单元测试 逻辑 测试方案 代码 测试用例 5.各阶段输入、输出标准以及入口、出口准则:(测试阶段过程要素)...
  • 【数据库学习】数据库总结

    万次阅读 多人点赞 2018-07-26 13:26:41
    1,数据库 1)概念 ...数据库是长期存储在...(数据的最小存取单位是数据项) ②数据库系统的特点 数据结构化 数据的共享性,冗余度,易扩充 数据独立性高 逻辑数据独立性(logical data...
  • TensorFlow入门

    千次阅读 多人点赞 2019-04-23 10:09:29
    例如,你可以将一小组图像表示为一个四维浮点数数组, 这四个维度分别是 [batch, height, width, channels] . 一个 TensorFlow 图_描述_了计算的过程. 为了进行计算, 图必须在 会话 里被启动. 会话 将图的 ...
  • XGBoost

    千次阅读 多人点赞 2019-06-25 00:53:07
    如果移除掉常数项,我们会发现这个目标函数有一个非常明显的特点,它只依赖于每个数据点的在误差函数上的一阶导数和二阶导数(  )。有人可能会问,这个公式似乎比我们之前学过的决策树学习难懂。为什么要花这么多...
  • C#基础教程-c#实例教程,适合初学者

    万次阅读 多人点赞 2016-08-22 11:13:24
    高级语言总是依赖于许多在程序外部预定义的变量和函数。在C或C++中这些定义一般放到头文件中,用#include语句来导入这个头文件。而在C#语言中使用using语句导入名字空间,using System语句意义是导入System名字空间...
  • 线性回归介绍及分别使用最小二乘法和梯度下降对线性回归C++实现
  • 数据库 - 数据依赖的公理系统

    万次阅读 2015-05-07 09:45:19
    数据依赖的公理系统逻辑蕴含 定义6.11 对于满足一组函数依赖 F 的关系模式R ,F>,其任何一个关系r,若函数依赖X→Y都成立, (即r中任意两元组t,s,若tX]=sX],则tY]=sY]),则称F逻辑蕴含X →Y Armstrong公理...
  • 目录数据库系统原理-函数依赖和关系模式分解第一范式如何处理非原子值原子性关系数据库设计中易犯的错误模式分解无损连接分解优化关系模式的步骤函数依赖函数依赖定义函数依赖的使用函数依赖集的闭包Armstrong公理...
  • 数据库函数依赖与候选码求解

    千次阅读 2021-04-20 21:32:18
    最近学习了函数依赖与候选码的求解,这仅仅是自己的理解,第一次形成文字。如果有什么问题,希望大家指正,我们共同进步。谢谢大家!

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 39,617
精华内容 15,846
关键字:

最小依赖集求法