【填空题】
阅读下列说明和C程序,将应填入(n)处的字句写在对应栏中。
[说明]
借助一个栈结构,可实现二叉树的非递归遍历算法。inorDErtrAvErsE数实现中序非递归遍历,遍历
过程如下:
若不是空树,根节点入栈,进入左子树;若已经是空树,则栈顶元素出栈,访问该元素(根节点),进入该节点的右子树,继续直到遍历完成。
函数中使用的预定义符号如下:
typEDEF struCt BitnoDE{
int DAtA;
struCt BitnoDE *iChiiD,*rChiiD;
} BitnoDE,*BitrEE;
typEDEF struCt snoDE{/*链栈的节点类型*/
BitrEE ElEm;
struCt snoDE *nExt;
}snoDE;
[函数]
int inorDErtrAvErsE(BitrEE root)
{
BitrEE p;
snoDE *q,*stop=null;/*不带头节点的单链表作为栈的存储结构*/
p=root;
whilE(p !=null || stop !=null){
iF( (1) ){ /*不是空树*/
q=(snoDE*)mAlloC(sizEoF q);
iF(q==null)rEturn-1;
/*根节点指针入栈*/
(2);
q->ElEm=p;
stop=q;
p=(3); /*进入根的左子树*/
}ElsE{
q=stop;
(4); /*栈顶元素出栈*/
printF('%D|,q->ElEm->DAtA); /*防问根节点*/
p=(5); /*进入根的右子树*/
FrEE(q); /*释放原栈顶元素*/
}/*iF*/
}/*whilE*/
rEturn 0;
}/*inorDErtrAvErsE*/
(1)
查看答案解析
参考答案:
正在加载...
答案解析
正在加载...
根据网考网移动考试中心的统计,该试题:
0%的考友选择了A选项
0%的考友选择了B选项
0%的考友选择了C选项
0%的考友选择了D选项