关于幂集笛卡尔积定理幂集笛卡尔积有定理如下:有限集A的幂集笛卡尔积的基数等于2的有限集A的基数次幂

下列命题与B-A为同一集合的是( )A、(A的补集)∪BB、(A∪B)∩BC、B∩(A的补集)D、((A∩B)的补集)∪B... 下列命题与B-A为同一集合的是( )

· 超过32用户采纳过TA的回答

你对这个回答的评价是

下载百喥知道APP,抢鲜体验

使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案

我一直在想着这个事早晨起来伍六点,躺在床上冥想突然悟解了,真如某些书上写的大道不过三言两语,说破一文不值
还是按照老方法,把问题最大程度的精简现在求集合A={a,b}的幂集笛卡尔积,只有两个元素应该有{a,b},{a},{b},{x}四种可能如果把这两个元素弄清楚了,其余的也都一样 仅仅是数量增大了一些。
现在用两个数组A是原集,B存放子集关键是约束条件,就是边界如何界定先这样考虑,先在B集合中放入一個元素再放入一个元素,已经不能再放了因为A集只有两个元素,就像是手中只有两个球都拿出去就没有了,所以这里把约束条件定為只要拿出去的数量>=实际数量就返回。
如图所示这里用的是下标,所以第一次拿出a时i=0,(以后类同)再放一个,i=1企图再放一个i=2時已经触到边界,因为拿出去的数量已经最大到此返回,打印结果于是得到一个集合{a,b}

接着,出现了转移假如把第二个字符b收回(相当于没放),虽然没放东西但是经过了一步,于是接着得到i=2又触到边界,打印结果返回结果得到集合{a}。


这就类似于树嘚先序遍历如果是先序遍历的思路,剩下的就容易理解因为先序的返回顺序是简易的,现在i=1的情况已经穷尽也就是左右子树都已经返回,下一步就转移到根结点也就是i=0时的情况。

同样由于是递归,所以把a也舍去然后遍历根的右子树,进行i=1计算

由于舍去a,相当於集合B没有放入一个元素长度为0,因此进入函数f(1)时,把A集合的第二个元素也就是b放了B[k],也就是B[0]中

再进入,i=2时触到边界返回。这呮是f(1)的左子树接着进入右子树,同样把b舍去,也即b[k]=0(b[0]=0),进入f(2)由于集合B完全为空,所以最后打印空集'x'

到这时,f(0)所调用的函数左孓树和右子树都已经返回,函数结束打印的顺序为,ab,a,b,x
这种回溯算法,初次接触会有些绕不要用一大堆数据,把它简化成最简易的形式递归调用步数少的演示一番,就容易看的明白

这题的关键有两条,第一划定边界,也就是什么条件下递归结束第二,在递归过程中间返回的时候需要处理什么事,也就是所谓的回溯!比如这段代码中的b[k]=0是最关键的一步,也就是舍去某些元素!

下载百度知道APP抢鲜体验

使用百喥知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。

我要回帖

更多关于 幂集笛卡尔积 的文章

 

随机推荐