C 语言

关注公众号 jb51net

关闭
首页 > 软件编程 > C 语言 > 树存储结构

树存储结构的几种表示方法

作者:BLSxiaopanlaile

今天小编就为大家分享一篇关于树存储结构的几种表示方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

名称:树存储结构的几种表示方法

说明:对于树的存储结构,一般有以下三种表示方法。

总之,选用不同的存储结构要根据具体的用途。(这当然是废话)。想说的是,在做一些题的时候,如果可以不用选用二叉树这种相对复杂的存储结构,那就选择线性的结构。对我来说,线性结构比二维的树的结构用的顺手。

//树的存储结构之双亲表示法
//树的结点定义
typedef struct
{
  int data;  //数据元素
  int parent;   //双亲的位置
}PTNode;
//树的类型定义
typedef struct
{
  //PTNode nodes[MAXSIZE];   //双亲表示
  int n;         //结点数
}PTree;
//树的存储结构之孩子表示法
//链表中孩子结点表示
typedef struct CHNode
{
  int pos;  //孩子的位置
  CHNode *next;  //指向下一个孩子的指针
}CHNode;
//数组中双亲结点表示
typedef struct CHNode1
{
  int data;    //数据元素
  CHNode *firChild;  //指向第一个孩子的指针
}CHNode1;
//树的类型表示
typedef struct
{
  CHNode1 nodes[MAXSIZE];   //所有的结点
  int n;   //节点的个数
}CHTree;
//树的存储结构之孩子兄弟表示法
typedef struct CSNode
{
  int data;  //结点的数据
  CSNode *firstchild,*nextbling;  //第一个孩子和下一个兄弟
}CSNode,*CSTree;

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

您可能感兴趣的文章:
阅读全文