以文本方式查看主题 - 中文XML论坛 - 专业的XML技术讨论区 (http://bbs.xml.org.cn/index.asp) -- 『 计算机考研交流 』 (http://bbs.xml.org.cn/list.asp?boardid=67) ---- 数据结构树的存储结构双亲孩子链怎么用C语言表示?急```` (http://bbs.xml.org.cn/dispbbs.asp?boardid=67&rootid=&id=61692) |
-- 作者:anni3989 -- 发布时间:4/22/2008 9:12:00 PM -- 数据结构树的存储结构双亲孩子链怎么用C语言表示?急```` 数据结构树的存储结构树双亲孩子链怎么用C语言表示?急```` |
-- 作者:jason_00 -- 发布时间:4/22/2008 10:05:00 PM -- typedef struct Node{ char data; struct Node ** Child;//Pointer to Array which consists of child node }*TNode; |
-- 作者:冬天的农夫 -- 发布时间:4/23/2008 12:54:00 PM --
我没有看明白楼主的意思。 |
-- 作者:蝶影 -- 发布时间:4/23/2008 3:20:00 PM -- ...为什么用ARRAY,不用链表呢?用链表更好吧... 而且上面两位貌似忘记还得加一个域,表示父结点,因为说了是“双亲”孩子链..... //设元素类型是ELEM,别忘记用的时候要define一下 typedef struct //孩子链表的结点 { int child; //记录子结点下标 Child *next; }Child typedef struct { int parent; //记录父结点位置 ELEM data; //记录元素 Child *ChildList; //记录孩子链表的头指针 }ParentChildList 用的时候是ParentChildList Tree[Max_size];这样建一个数组...
|
-- 作者:jason_00 -- 发布时间:4/23/2008 5:39:00 PM -- 树中每个结点的双亲唯一性,在存储结点信息的同时,为每个结点附设一个指向其双亲的指针parent,惟一地表示任何-棵树,所以可以用双亲链表表示法 定义如下: #define MaxTreeSize 100 //向量空间的大小,由用户定义 typedef char DataType; //应由用户定义 typedef struct{ DataType data;//结点数据 int parent; //双亲指针,指示结点的双亲在向量中的位置 }PTreeNode; typedef struct{ PTreeNode nodes[MaxTreeSize]; int n; //结点总数 }PTree; PTree T; //T是双亲链表 所以所谓“LZ双亲孩子链表表示法”,有点多余,要么双亲链表,要么孩子链表 孩子链表定义如下: //以下的DataType和MaxTreeSize由用户定义 typedef struct CNode{//子链表结点 int child; //孩子结点在向量中对应的序号 struct CNode *next; }CNode; typedef struct{ DataType data; //存放树中结点数据 CNode *firstchild;//孩子链表的头指针 }PTNode; typedef struct{ PTNode nodes[MaxTreeSize]; Int n,root; //n为结点总数,root指出根在向量中的位置 }CTree; Ctree T; //T为孩子链表表示 |
-- 作者:chosen0ne -- 发布时间:4/23/2008 6:59:00 PM -- 什么叫做“树双亲孩子链”呢?? |
-- 作者:蝶影 -- 发布时间:4/23/2008 9:26:00 PM -- 就是有双亲有孩子。在一个结点里,有父结点的信息,也有孩子链表的信息。 |
-- 作者:蝶影 -- 发布时间:4/23/2008 9:28:00 PM -- 但是单用双亲或者单用孩子,要是访问孩子的操作和访问父结点的操作都比较多呢?这样两者结合就会比较好。 我觉得设计什么样的存储结构,取决于具体使用的规则。可以分开用,也可以合在一起用。 |
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
78.125ms |