手机浏览器扫描二维码访问
一棵树中每两个点之间都有且只有一条路径(指没有重复边的路径)。一颗有N个点的树有N-1条边,也就是连接N个点所需要的最少边数。所以如果去掉树中的一条边,树就会不连通。
如果在一棵树中加入任意的一条边,就会得到有且只有一个环的图。这是因为这条边连接的两个点(或是一个点)中有且只有一条路径,这条路径和新加的边连在一起就是一个环。如果把一个连通图中的多余边全部删除,所构成的树叫做这个图的生成树。
如果要在树中加入一个点,就要加入一条这个点和原有的点相连的边。这条边不会给这棵树增加一个环或者多余的路径。所以每次这样加入一个点,就可以构成一棵树。
一棵树既可以是有向的也可以是无向的。显然,树是连通图,但不会是双连通图(对于无向图)或者强连通图(对于有向图)。树可以算是稀疏图。
显然树中也没有自环和重复边。
定义
如果一个无向简单图G满足以下相互等价的条件之一,那么G是一棵树:
G是没有回路的连通图。
G没有回路,但是在G内添加任意一条边,就会形成一个回路。
G是连通的,但是如果去掉任意一条边,就不再连通。
G是连通的,并且3顶点的完全图?不是G的子图。
G内的任意两个顶点能被唯一路径所连通。
如果无向简单图G有有限个顶点(设为n个顶点),那么G是一棵树还等价于:
G是连通的,有n?1条边,并且G没有简单回路。
如果一个无向简单图G中没有简单回路,那么G是森林。
性质
一棵树中每两个点之间都有且只有一条路径(指没有重复边的路径)。一颗有N个点的树有N-1条边,也就是连接N个点所需要的最少边数。所以如果去掉树中的一条边,树就会不连通。
如果在一棵树中加入任意的一条边,就会得到有且只有一个环的图。这是因为这条边连接的两个点(或是一个点)中有且只有一条路径,这条路径和新加的边连在一起就是一个环。如果把一个连通图中的多余边全部删除,所构成的树叫做这个图的生成树。
如果要在树中加入一个点,就要加入一条这个点和原有的点相连的边。这条边不会给这棵树增加一个环或者多余的路径。所以每次这样加入一个点,就可以构成一棵树。
一棵树既可以是有向的也可以是无向的。显然,树是连通图,但不会是双连通图(对于无向图)或者强连通图(对于有向图)。树可以算是稀疏图。
显然树中也没有自环和重复边。
有根树
在一棵树中可以指定一个特殊的节点:根。一个有根的树叫做有根树。
有根树中的节点可以根据到根的距离分层。一颗有根树的层数叫做这棵树的高度。节点最多的那一层的节点数叫做这棵树的宽度。对于有根树,每条边都有一个特殊的方向:指向根节点的方向,或者说上一层的方向(或者相反的,指向叶节点的方向,下一层的方向)。一条边的两个端点中,靠近根的那个节点叫做另一个节点的父节点(也叫父亲、双亲、双亲节点),相反的,距离根比较远的那个节点叫做另一个节点的子节点(也可以叫孩子,儿子,子女等)。父亲方向的所有节点都叫做这个节点的祖先,儿子方向的所有节点都叫做这个节点的子孙。没有子节点的子节点叫做叶节点(或者叶子节点)。由于到根的路径只有一条,根节点以外的节点的父节点永远只有一个,祖先就是这个点到根的路径上的所有节点(包括根,不包括这个节点本身)。另外,以一个节点为根的树是指包括这个节点和其所有子孙,并以这个节点为根的树。由于一般不需要这以外的子树,每一个节点也可以对应到一个以其为根的树,一个节点的子树通常也是指以这个节点的子节点为根的树。
如果一颗有根树每个节点的子树最多有n个,同时每个节点在其父节点中都有固定的可能可以留空的位置,这棵树叫做n叉树。其中每个节点都可以有两个固定位置的子树的有根树叫做二叉树,二叉树中每个节点的两个子树分别叫做左子树和右子树,由于位置固定,没有左子树的时候也是可以有右子树的。而“多叉树”通常并不指n为任意值的n叉树,只是在和n叉树作比较的时候表示普通的有根树。
对于随机的树,高度的平均复杂度是O(logn),但是没有限制而且不随机的树高度也可以达到O(n),也就是除了叶节点都只有一个子树,或者常数个分支的情况。所以树作为数据结构时通常需要另外进行平衡。
存储
对于普通的树,可以像图一样为每一个点存储一个边表(通常按顺序存和每一个点的关系的叫做邻接矩阵,存具体的边的叫做邻接表),或者直接存储所有边的边表等。由于树是稀疏图,所以一般不用邻接矩阵存储。对于有根树,如果用为每一个点储存一个边表的方法,由于每一棵树都只有一个父节点,所以通常指向父节点的边不存在这个表中。同时如果子节点是没有顺序的,也是因为一个节点的子节点不会同时是其他节点的子节点,也可以把子节点直接当成存边的链表的节点,这时候每个节点只需要储存两个指针,所以这种存储方法有时候也会被叫做多叉树转二叉树。
对于子节点是有顺序的有根树,每条边都可以以固定的位置分别储存。对于完全二叉树甚至能直接用一个数组访问所有节点,不另外储存边的信息。有的树可以被设计成固定的从根节点开始访问,这时候可以不储存父节点。同样的,有的树也可以省略子节点,例如并查集。
树。。。。。
说小于顶点数。
,以及合并两个集合等。
加载更多
诸天之缔造神话 我真不想变成狗 我的系统不正常 大域主 玻璃心 氪金剑仙 迎娶皇后,竟让我这假太监帮忙? 网游之我把幸运点满了 择日飞升 我独自拯救世界 悟道寻真 活体战舰 水之遥 医婿叶凡 快穿之异世空间 婚然心动:总裁宠妻超甜哒 游戏之从愤怒的小鸟开始无敌 清城恋:一见倾心 守着替身装情深,盛少别较真! 我在天刀当大佬
关于校园青春之混的那些年我叫陈庆,因为校园霸凌,走上了这条不归路,而踏进这泥潭后,却越陷越深,直到淹没,永远的消失给大家讲讲我曾混过的那些年吧,或许当时很快乐,或许当时没有那么多的烦恼,或许也因为那几年改变了一生,又或许正是那些年毁了我的一生!(特此声明本故事纯属虚构无不良引导切勿代入现实请勿模仿)注作者写本书目的只是告诫大家,不要踏足这泥泞之地,出来混,没有什么好下场,也不会有那么多的叱咤风云,常在河边走哪有不湿鞋,当你遇到背叛出卖欺骗家人分离时,那种痛苦无法想象,你以为你得到尊严了,但你却早已失去了尊严。相信各位读者都会感同身受,远离这片是非之地。珍惜眼前,活在当下,简单平淡也是幸福,感谢大家。...
关于封神七彩锦鲤,微末崛起夏渊穿越洪荒,成了一只七彩锦鲤。实力弱小的他艰难求生,直至觉醒吞噬系统。通天好徒儿,多吃点...
关于观人有道中华传统绝学,道门五术,山医命相卜,通一门可横行天下。母亲怀我时梦见一条金色鲤鱼入怀。算命先生说必生异子,将来名扬天下,能够观人知心,看人知未来。山医命相卜,道门五绝学。测字,面相,手相,八字,六爻,风水,梅花易数,能学到很多东西,看完可以直接用在现实中。内容真实有趣,书中干货多,学会了以后鉴别人渣用的到。千人千面,百态人生。起于微末,终于成就。书中案例皆为真实,所见即所得,有缘者慎用。...
简介自三圣母被压华山,沉香劈山救母之后,三界看似恢复平静,实则暗潮涌动。然而,一个神秘天象的出现打破了这看似平静的局面,传说中早已消逝的瑶姬竟重现三界。瑶姬的归来带来了诸多谜团,她身上似有一股神秘力量,与宝莲灯的光芒遥相呼应。是命运的驱使还是另有隐情?瑶姬的出现让各方势力或心怀期待,或满心戒备。她在寻找着失去的记忆...
关于关于我会祸国殃民这件事梅若林是大妖王转世,一出生就因为不是父亲想要的儿子,受到家人厌恶千方百计想弄死她。她将计就计,远走他乡建立自己的势力,谁知,还没长大呢,就因个人魅力太强,一路吸引身份尊贵的绝美男子跪下与她私定终生。后来,十国皇帝是她的狗腿子,黑白两道的世家暗帝是她的侍妾,美艳天仙的圣灵大人红着眼,如小鹿般求她垂怜,四海神兽化为妖娆美人只为得到她的青睐,事情的发展越走越偏,美人们为了得到她的注视开始不择手段,她却闲庭野鹤,隔岸关火。后来,她那不要脸的爹看到她一身雍容华贵,欢天喜地来认亲时事情越发的好玩了。...
大厨秦夏休假旅游时出了意外,不幸穿成趁反派受伤失忆时将其强娶过门,最后见了阎王的书中炮灰。眼前这名原主从牙行买来当夫郎的哥儿,实则是日后一手遮天的东厂提督虞九阙。美人面蛇蝎心,恶名远扬。穿来时原主已经把人抱在了怀中,打算当场洞房。秦夏摸了摸发凉的脖子,硬着头皮转移话题你饿不饿,我下碗面给你吃?然后虞九阙吃光了他煮的面。足足五碗。而且认定自己就是秦夏的夫郎,一门心思要给他暖床。魔蝎小说...