数据结构:树
2015-07-26 11:53
274 查看
树
出现原因:对于大量的输入数据,链表的线性访问时间太慢
而树的大部分操作的运行时间平均为O(logN)
定义:n个结点的有限集合(n>0)
递归定义:1.根节点
2.除根节点的m个不相交有限集也是树,根的子树
树的实现:链表存储
typedef struct _node{
int value;
struct _node *brother;
struct _node *son;
}treenode;
*具有N个结点的每棵二叉树都需N+1个NULL指针
二叉树
定义:一颗每结点不多于2个儿子的树
typedef struct _node{
int value;
struct _node *left;
struct _node *right;
}treenode;
二叉查找树
定义:树中每个结点x,它的左子树中的所有关键字值小于x,它的右子树中所有关键字值大于x
对象集:二叉查找树
操作集:void Makeempty(treenode *T);
treenode *Find(teenode *T);
teenode *Findmin(treenode *T);
treenode *Findmax(treenode *T);
int Retrieve(treenode *T);
treenode *Insert(treenode *T);
treenode *Delete(treenode *T);
AVL树
带有自平衡条件的二叉查找树
*其操作是建立在二叉查找树的基础上
*其insert/delete需要旋转以达到自平衡的目的
旋转函数:
treenode *Singlerotatewithleft(treenode *k2);
treenode *Doublerotatewithleft(treenode *k3);
treenode *Singlerotatewithright(treenode *k1);
treenode *Doublerotatewithright(treenode *k1);
伸展树
B-树
出现原因:对于大量的输入数据,链表的线性访问时间太慢
而树的大部分操作的运行时间平均为O(logN)
定义:n个结点的有限集合(n>0)
递归定义:1.根节点
2.除根节点的m个不相交有限集也是树,根的子树
树的实现:链表存储
typedef struct _node{
int value;
struct _node *brother;
struct _node *son;
}treenode;
*具有N个结点的每棵二叉树都需N+1个NULL指针
二叉树
定义:一颗每结点不多于2个儿子的树
typedef struct _node{
int value;
struct _node *left;
struct _node *right;
}treenode;
二叉查找树
定义:树中每个结点x,它的左子树中的所有关键字值小于x,它的右子树中所有关键字值大于x
对象集:二叉查找树
操作集:void Makeempty(treenode *T);
treenode *Find(teenode *T);
teenode *Findmin(treenode *T);
treenode *Findmax(treenode *T);
int Retrieve(treenode *T);
treenode *Insert(treenode *T);
treenode *Delete(treenode *T);
AVL树
带有自平衡条件的二叉查找树
*其操作是建立在二叉查找树的基础上
*其insert/delete需要旋转以达到自平衡的目的
旋转函数:
treenode *Singlerotatewithleft(treenode *k2);
treenode *Doublerotatewithleft(treenode *k3);
treenode *Singlerotatewithright(treenode *k1);
treenode *Doublerotatewithright(treenode *k1);
伸展树
B-树
相关文章推荐
- 课程笔记 12:数据结构(清华) 二叉树-节点
- 检查数据结构的软
- 数据结构与算法之“图”
- 各种排序(数据结构复习之内部排序算法总结)
- 数据结构之冒泡排序
- 并查集树数据结构hdu1325
- 用两个队列模拟一个栈
- 初学数据结构之二叉树
- 课程笔记 11:数据结构(清华) 栈与队列
- 课程笔记 10:数据结构(清华) 栈
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构+算法面试100题~~~摘自CSDN,作者July
- 南阳 oj 中缀式变后缀式 题目467 数据结构 NYOj
- 南阳 oj 表达式求值 题目35 数据结构 NYOj
- 数据结构浅析(二)
- java数据结构之栈
- HDU 2203 - 亲和串
- HDU 4628 Pieces (状压DP)
- HDU 数据结构 - 字典树 解题报告汇总
- 数据结构——Currency System in Geraldion