您的位置:首页 > 其它

rant之离散数学

2011-11-23 22:57 134 查看
很久没有写博客了,今天就淋漓尽致地rant一下心中的愤懑之情。

NND,那个离散数学的课本我真的是受够了,密密麻麻一张纸都是定义and定理。没有耐心是根本学不下去的,我硬着头皮看了1.5h,才勉强看了6页。今天我就要好好rant一下,以发泄一下心中的辛酸。

【满纸都定义,一把辛酸泪】

我说,离散数学好多定义呀,据观察一页纸竟然有三个定义或者定理。就今天晚上看的“树”。就有“树”,“基本圈”,“割集”,“最小生成树”等若干概念。仔细认真地看,就会发现其中的一些概念其实可以很形象,对于这种抽象的数学语言我理解得很慢。

【树】

就比如树,树就是数据结构中看到的树,而对于无向树,它的定义是:“连通无回路的无向图为无向树”。好了,我接下来要rant了,nnd,一个定义有好多个等价的命题:

1、G是树

2、G中任意两点有唯一path

3、G中无回路,且边数等于点数减一

4、G联通,且边数等于点数减一

……

这些我都忍了,并且记下来慢慢理解。

但是看到下文我就要崩溃了,这些东西还要证明。恕我愚钝,我只知道怎么证明高等数学的一些命题,但是我不知道这些命题是怎么证明的。我只能说我石化了。

【画出无向树】

这个不算吐槽,就算是总结回顾一下。要画出非同构的无向树,就要根据树的定义来画。当然我要先找个突破口,否则乱画啥玩意都会乱了。根据握手定理,所有结点的度d 一定是 2*边数 ,接下来就是排列组合了,如何将这个d拆解成 点数个 数n(i)的和,列举所有的组合,就可以根据度来确定结点的位置了。我觉得啥玩意都虚,只有拿出图来才是真的。



比如这个图就是1、1、1、1、 4的组合。偶滴个神呀,总算挽回了一点自信。

【生成树】

数据结构(DS)课上讲过生成树的kruskal算法,所以会有一点点印象。我的理解就没有课本上的那么抽象,太抽象的东西需要形象的东西来辅助思考。

书上用破圈法来得到一颗G的生成树,当然我理解为打断那些多余的线,到最好整个图还联通着,但是却没有了回路,得到的就是生成树了。

接着又是概念:什么是弦,什么是圈,什么是割集。

按我的理解,弦就是那些树枝上拉的一条橡皮筋,是构成圈的东西,多余的。

有了弦就会有圈(回路),于是就有了以弦为中心的一个圈,这个圈中只有一条是弦,其他全部是树枝。

有了好多圈,就会有圈的秩,圈的秩 = 弦的数 = 圈的个数。

对于割集来说,每个割集只含有一条树枝,因为锯断这根树枝之后整个图就不连通了,所以叫边割集。

【最小生成树的算法】

最小生成树的kruskal算法的概要是将现有的图中分为两个联通集,一个是最小生成树的联通集G1,而每次都从G-G2(即G1的补)中找一个最近的点,只要不会使G1变成环,那么就将它归到G1中去。呵呵,这个倒是很好理解。

它还引申出了相似度 d 的计算,还有将一个图划分成K个子类的方法。

【R叉树】

R = 2的时候,就是DS中的二叉树了。看看,这里又有一大堆的定义,要是我稍有点不耐心,随时都会掩面哭起来。虽然通过联系很好记忆,但是这毕竟让我很痛苦。根树(一棵树),树根(树的一个根节点),分支点(那些开叉的),内点(包围在树里面的),树叶(一棵树最外面的结点,根以下的)。虽然很好理解,但这都是因为学了一点数据结构。

本次吐槽终于告一段落,吐槽不是最终目的,最终目的是发泄一下心中怨气。达到治愈身心的效果(的确被气得吐血)。不过最终我还是发现,只要多倾注一点耐心,我的数学也不算很差。路漫漫其……

by bibodeng 2011-11-23
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息