urn d;
}
(1)
(2)
(3)
33.阅读下列算法并回答问题:
(1)设数组L[1..8]的初值为(4,-3,7,-1,-2,2,5,-8),写出执行函数调用f33(L,8)之后的L[1..8]中的元素值;
(2)简述函数f33的功能。
void f33(int R[], int n)
{
int x=R[1];
int low=1, high=n;
while(low<high)
{
while(low<high && R[high]>=0)
high --;
if (low>high)
{
R[low++]=R[high];
while (low<high&& R[low]<0)
low++;
R[high--]=R[low];
}
}
R[low]=x;
}
(1)
(2)
五、算法设计题(本大题10分)
34.假设以二叉链表作为二叉树的存储结构,其结点结构为:
依照如下给定的函数f34的原型,编写求二叉树T中叶子结点所在的最小层次与最大层次的函数。其中,参数level为函数执行过程中T当前所指结点的层次,其初值为1;*lmin与*lmax分别为叶子结点的最小层次与最大层次,它们的初值均为0。
void f34(BinTree T, int level, int * lmin, int * lmax);