标题:对严蔚敏广义表求深度的疑问
只看楼主
yxlovemoney
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2007-6-3
 问题点数:0 回复次数:0 
对严蔚敏广义表求深度的疑问
她书上的算法是这样的。
int GListDepth(GList L)
 {
     //采用头尾链表存储结构,求广义表L的深度
     int max,dep;
     GList pp;

     if(!L) return 1; //空表深度为1
     if(L->tag==ATOM)
         return 0; //原子深度为0
     
     for(max=0,pp=L; pp; pp=pp->a.ptr.tp)
     {
         dep = GListDepth(pp->a.ptr.hp);//求以pp->a.ptr.hp为头指针的子表深度
         if(dep>max) max = dep;
     }
     return max+1;
 }

结果我输入这样的广义表  "(a,(b),(c))" 结果深度得出是2, 这样的话深度应该是3吧?是不是算法有问题呢?
搜索更多相关主题的帖子: 深度 疑问 严蔚敏 
2009-09-20 01:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-286244-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.696325 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved