注:文章内容来源于网络,真实性有待确认,请自行甄别。
从广义表L中取出原子t的运算已知广义表L=((x,y,z),a,
发表于:2024-10-24 00:00:00浏览:14次
问题描述:已知广义表L=((x,y,z),a,(u,t,w)),
求:从L表中取出t的运算过程.
注:求广义表L的表头运算是head[L]
求广义表L的表尾运算是tail[L]
谢谢
定义 traverse(S) 遍历表S中的节点p
定义 first(S) 取S中的第一个节点
定义 next(S,p) 取S中的节点p的下一个节点,如果已取完,返回空
定义 is_leaf(p) 节点p是否为叶子,就是数据
定义 is_node(p) 节点p是否为节点,就是子表
traverse(S)
{
p=first(S);
do
{
if(is_leaf(p))
{
到达叶子
return;
}
else if(is_node(p))
{
traverse(p);
p=next(S,p)
}
}while(p)//do
}//traverse
栏目分类全部>