广义表中中怎么区分原子节点和表节点

职业培训 培训职业 2024-12-28
这个要自己定义一个标志位,例如书上就这样表示:LIST表示“表”,ATOM表示“原子”。具体的你看教材就行了。typedef enum{ATOM,LIST}ElemTag;struct GLNode{ElemTag tag; //这个就是标志位union{AtomType atom;struct GLNode * sub_link;}val;struct GLNode *next;}表结点的

这个要自己定义一个标志位,例如书上就这样表示:

LIST表示“表”,ATOM表示“原子”。具体的你看教材就行了。

typedef enum{ATOM,LIST}ElemTag;

struct GLNode{

ElemTag tag; //这个就是标志位

union{

AtomType atom;

struct GLNode * sub_link;

}val;

struct GLNode *next;

}

表结点的特点就是:它的内容是表,而原子结点的内容内容就是一个数值。自己写写广义表的基本运算就能明白了,我当初也对这个东西很模糊,后来自己实现了广义表的基本操作后基本上就理解了。呵呵!记住,一定要写写代码,不管是模仿别人的还是自己写,都会有收获,不过自己写的效果可能会好些。

标签

版权声明:本文由哟品培原创或收集发布,如需转载请注明出处。

本文链接:http://www.yopinpei.com/20241228/2/949718

猜你喜欢
其他标签