第1个回答 2018-06-10
计算方法一:
Depth(GList) = Max{Depth(GList.head) + 1, Depth(GList.tail)
如:(a,(b,c,d),e),表头的深度a为0,表尾的深度((b,c,d),e)为2,所以广义表的深度为2
计算方法二:
Depth(GList) =1+Max{αi}(1<=i<=n),αi是子列表,n是广义表子表的个数
仍然是上个例子:a的深度为0,(b,c,d)的深度为1,e的深度为0,所以广义表的深度为2
第一种方法是将广义表看成是由表头和表尾组成的一种结构
第二种方法是将广义表看成由各个子列表组成的一种结构