/****
【题目】试按依次对每个元素递归分解的分析方法重写求广义表的深度的递归算法。
广义表类型GList的定义:
typedef enum {ATOM,LIST} ElemTag;
typedef struct GLNode{
ElemTag tag;
union {
char atom;
struct {
GLNode *hp, *tp;
} ptr;
}un;
} *GList;
****/
int GListDepth(GList ls)
/* Return the depth of list */
{
int h1,h2;
if(ls==NULL)
return 1;
if(ls->tag==ATOM)
return 0;
h1=GListDepth(ls->un

本文主要探讨了如何使用递归方法重写广义表的深度计算、广义表相等判断以及输出广义表中所有原子项及其层次的算法。通过对每个元素进行递归分解,详细分析了针对广义表的三个关键递归操作,涉及数据结构和递归算法的应用。
最低0.47元/天 解锁文章
3万+

被折叠的 条评论
为什么被折叠?



