【难】完全二叉树按结点编号次序采用顺序存储结构实现存储,已知数组下标从0开始(即根结点的下标为0)以下算法利用堆栈消除递归实现完全二叉树的先序遍历,请填空使程序完整。
void pre_ travel(ElemTp a[], intn) /*n 为完全二叉树结点总数*/
{
int i = 0;
initStack(S) ; /*初始化堆栈并置空栈*/
whil( (13) | | !empty(S) ) /* empty(S) 测试栈空*/
if(i<n){visite(a[i]);/*访问当前子树根结点 a[i]
push(S, (14) ) ;
i = 2*i+1;/*i向左分树深入,指向左儿子*/
}
else { i = pop(S) ;
i = (15) ; /*i向右分支深入,指向右儿子*/
}
}
查看答案和解析【26考研辅导课程推荐】:26考研集训课程,VIP领学计划,26考研VIP全科定制套餐(公共课VIP+专业课1对1) , 这些课程中都会配有内部讲义以及辅导书和资料,同时会有教研教辅双师模式对大家进行教学以及督学,并配有24小时答疑和模拟测试等,可直接咨询在线客服老师领取大额优惠券。
启航教育热门私房课
MORE