美文网首页
树的存储结构

树的存储结构

作者: 我有一只碗 | 来源:发表于2018-01-28 15:25 被阅读0次

树的存储结构有以下几种

  1. 双亲表示法
#define MAXSIZE 20

// 节点
typedef struct PTNode
{
    int data;
    // 双亲下标
    int parent;
} PTNode;

// 树
tyepdef struct
{
    PTNode nodes[MAXSIZE];
    // 根的位置和节点树
    inr r, n;
} PTree;

这样子表示的优势在于访问双亲节点的时间复杂度为O(1),但是如果想要访问一个节点的孩子节点则需要遍历整个树。

  1. 孩子表示法
#define MAXSIZE 20

// 孩子节点
typedef struct CTNode
{
    int child;
    struct CTNode *next;
} *ChildPtr

// 节点
typedef struct
{
    int data;
    // int parent;
    ChildPtr first_child;
} CTBox;

typedef struct
{
    // 节点数组
    CTBox nodes[MAXSIZE];
    // 根的位置和节点数
    int r, n;
} CTree;
  1. 孩子兄弟表示法
// 孩子兄弟表示法
typedef struct CSNode
{
    int data;
    struct CSNode *first_child, *right_brother;
} CSNode, *CSTree;

这样表示的好处是将一个复杂的树转化为了二叉树。

相关文章

  • 数据结构学习第四弹 树与森林

    在前面已经介绍过了二叉树的存储结构,那么对于一般的树来说,他的存储结构又该是怎么样的呢。 树的存储结构 树存储结构...

  • 基本数据结构底层原理和总结

    基本数据结构解析 逻辑结构分为:集合,线性,树,图。存储结构分为:线性存储,链式存储,索引存储,has存储。 数组...

  • 数据结构--树

    树的存储结构一(分为顺序存储和链式存储[二叉链表])树的存储结构二 二叉树 二叉树:是n(n≥0)个结点的有限集合...

  • 树的存储结构

    树的存储结构有以下几种 双亲表示法 这样子表示的优势在于访问双亲节点的时间复杂度为O(1),但是如果想要访问一个节...

  • 二叉树

    定义 斜树 完美二叉树 完全二叉树 存储结构 顺序存储结构 二叉链表 二叉...

  • mysql数据结构相关

    数据结构其实分2大部分: 存储结构:数据根据什么规则存储,比如索引存储的时候要根据树的规则去存储。 逻辑结构:数据...

  • 是时候来了解JDK8 HashMap的实现原理了

    一 HashMap底层存储结构 HashMap底层结构采用(数组)+(链表 or 红黑树)的形式来存储节点。...

  • 算法与数据结构二、HashMap深度剖析

    概述 我们知道,数据结构的物理存储结构只有两种:顺序存储结构和链式存储结构,像栈、队列、树、图等一系列结构都是基于...

  • 数据结构-学习记录

    数据结构的分类1.逻辑结构-----集合、树形,图型、树型、线性结构2.物理结构-----顺序存储、链式存储。(查...

  • 二叉树的顺序存储

    前言 顺序存储结构难些。因为树是一种一对多的数据结构,由于它的特殊性使用顺序存储结构也可以实现。 顺序存储二叉树:...

网友评论

      本文标题:树的存储结构

      本文链接:https://www.haomeiwen.com/subject/kzzaaxtx.html