数据结构——树(定义)

来源:互联网 发布:mac os x怎么更新 编辑:程序博客网 时间:2024/06/15 10:48

树定义:
n(n>=0)个节点构成的有限集合。n=0时为空树。
树的性质:
树中有一个称为“根(root)”个互不相交的有限集T1,T2,…,Tm,其中每个集合本身又是一棵树,称为原来树的“子树(subtree)”
这里写图片描述
注意:子树是不相交的;
除了根结点以外,每个结点有且仅有一个父结点;
一棵N个结点的树有N-1条边。
这里写图片描述
基本术语:
1.结点的度(Degree):节点中的子树个数;
2.树的度:树的所有结点;
3.叶结点(Leaf):度为0的结点;
4.父结点(parent):有子树的节点是其字数的根节点的父结点;
5.子结点(Child):若A结点是B结点的父节点,则称B结点是A结点的子节点;子结点也称孩子结点。
6.兄弟结点(Sibling):具有同意父结点的各结点彼此是兄弟结点。
7.路径和路径长度:从结点n1到nk的路径为一个结点序列n1,n2,… ,nk,ni是ni+1的父结点。路径所包含边的个数为 路径的长度。
8.祖先结点(Ancestor):沿树根到某一结点路径上的所有结点都是这个结点的祖先结点。
9.子孙结点(Descendant):某一结点的子树中的所有结点是这个结点的子孙。
10. 结点的层次(Level):规定根结点在1层,其它任一结点的层数是其父结点的层数加1。
11.树的深度(Depth):树中所有结点中的最大层次是这棵树的深度。

树的表示:儿子兄弟表示法

基本操作和功能分层次组织在管理上具有更高的效率!

1.查找:根据某个给定关键字K,从集合R中找出关键字与K相同的记录。
静态查找:集合中记录是固定的没有插入和删除操作,只有查找。
eg:顺序查找(time complexity:O(n));二分查找(time complexity:0(logN))

动态查找:集合中记录是动态变化的除查找,还可能发生插入和删除。
动态查找:集合中记录是动态变化的除查找,还可能发生插入和删除。

原创粉丝点击