树的三种存储方法

一、双亲存储结构

typedef struct
{
    int data;
    int parent;
}PTree[max_size];//P表示parent


图像如下:

 

二、孩子链存储结构

typedef struct snode
{
   int data;
   node *next;//指向兄弟;
}Son_node;
typedef struct
{
  int data;

  int parent;

  Son_node *first_son;
}Pnode;//双亲节点
typedef struct
{
  Pnode node[max_size];
  int r,n;//r表示根节点,n表示节点个数
};

图像如下:

 

三、孩子兄弟链存储结构

typedef struct node
{
    int data;
    struct node *hp;//指向兄弟
    struct node *vp;//指向孩子节点 
}TSBnode;//S表示Son,B是brother的缩写

 图像表示如下:

 

posted @ 2018-11-27 14:56  shenyuli  阅读(4585)  评论(1编辑  收藏  举报
Live2D