免费阅读
返回
菜单
上一章查看最新章节下一章

第236章 声名鹊起

作品:我哥居然成神了作者:少年的我
如果本章错误,请点击报错10秒纠正

到根的路径只有一条,根节点以外的节点的父节点永远只有一个,祖先就是这个点到根的路径上的所有节点(包括根,不包括这个节点本身)。另外,以一个节点为根的树是指包括这个节点和其所有子孙,并以这个节点为根的树。由于一般不需要这以外的子树,每一个节点也可以对应到一个以其为根的树,一个节点的子树通常也是指以这个节点的子节点为根的树。

如果一颗有根树每个节点的子树最多有n个,同时每个节点在其父节点中都有固定的可能可以留空的位置,这棵树叫做n叉树。其中每个节点都可以有两个固定位置的子树的有根树叫做二叉树,二叉树中每个节点的两个子树分别叫做左子树和右子树,由于位置固定,没有左子树的时候也是可以有右子树的。而“多叉树”通常并不指n为任意值的n叉树,只是在和n叉树作比较的时候表示普通的有根树。

对于随机的树,高度的平均复杂度是O(logn),但是没有限制而且不随机的树高度也可以达到O(n),也就是除了叶节点都只有一个子树,或者常数个分支的情况。所以树作为数据结构时通常需要另外进行平衡。

存储

对于普通的树,可以像图一样为每一个点存储一个边表(通常按顺序存和每一个点的关系的叫做邻接矩阵,存具体的边的叫做邻接表),或者直接存储所有边的边表等。由于树是稀疏图,所以一般不用邻接矩阵存储。对于有根树,如果用为每一个点储存一个边表的方法,由于每一棵树都只有一个父节点,所以通常指向父节点的边不存在这个表中。同时如果子节点是没有顺序的,也是因为一个节点的子节点不会同时是其他节点的子节点,也可以把子节点直接当成存边的链表的节点,这时候每个节点只需要储存两个指针,所以这种存储方法有时候也会被叫做多叉树转二叉树。

对于子节点是有顺序的有根树,每条边都可以以固定的位置分别储存。对于完全二叉树甚至能直接用一个数组访问所有节点,不另外储存边的信息。有的树可以被设计成固定的从根节点开始访问,这时候可以不储存父节点。同样的,有的树也可以省略子节点,例如并查集。

树的遍历

对于一般的树,可以用和普通的图一样的方法遍历,比如深度优先搜索和宽度优先搜索。如果和树的每个节点相邻的点有固定的顺序,深度优先搜索可以不储存当前点以外的任何信息,而且不用判重。而在有根树中更方便,所以有根树中很少使用宽度优先搜索。

对于有根树

…。。
   本章没完,请点击下—页继续阅读!如果被转码了请退出转码或者更换浏揽器即可。
  温馨提示:亲爱的读者,如果你觉得本站还好,为了避免丢失和转马,请勿依赖搜索访问,建议你使用[华为刘揽器]或[Firefox火狐刘揽器]访问并收蔵【祭司书院】 m.jsshengmin.com。我们将会持续为你更新,还建议你注册会员使用书架功能追书阅读更方便。
上一页 123下一页
上一章查看最新章节下一章
临时书架加入书签回顶部↑

看了《我哥居然成神了》的书友还喜欢看

家父刘备,望父成龙
作者:周府
简介: 汉室衰弱,群雄逐鹿。徐州陶谦、兖州曹操、扬州袁术,窥探中原。刘公初居小沛,深陷纷争,...
更新时间:2026-03-03 22:54:19
最新章节:第24章我胜则曹忧,我败则曹喜
长生修仙:从薅妖兽天赋开始
作者:廿三声
简介: 再睁开眼,林长珩降临危险的修仙界,宗门林立、世家割据,邪魔横行、妖兽乱世。
...
更新时间:2026-03-03 23:26:00
最新章节:第425章 越国现状,结婴内幕;正魔倾轧,终得混入
连麦犯罪现场,全警局蹲我直播间
作者:灯下锦鲤
简介: 姜炽,冥界最嚣张的小殿下,被三生石碰瓷欠下百亿巨债,惨遭冥王老爹踹去人间。
...
更新时间:2026-03-03 23:38:11
最新章节:第八十八章 张家再次伟大~
直播相亲:我的情报无限刷新
作者:一剑斩南天
简介: 网友:“张哥,我的相亲对象说自己是库里那样的球员,一人一城,但是我调查发现,她其实是...
更新时间:2026-03-03 23:14:57
最新章节:第531章 灵魂伴侣不等于婚姻幸福
御兽之我真不是天才
作者:风和穗
简介: 【女强+无cp+万兽迷】开局穷得叮当响,差点就带御兽去吃土。好在半道觉醒,面板诞生。...
更新时间:2026-03-03 22:06:00
最新章节:第二百四十六章 一区天骄
末日公寓求生,而我无限分身!
作者:叶余
简介: 全球所有人,被传送到一座座末日公寓中!\n所有人觉醒天赋,于公寓中艰难求生。
更新时间:2026-03-03 23:26:55
最新章节:第515章 请个小假
书名:

本站若有图片广告属于第三方接入,非本站所为,广告内容与本站无关,不代表本站立场,请谨慎阅读。

Copyright © 2020 祭司书院 All Rights Reserved.kk

SiteMap