阅读算法algorithm,并回答问题。
void algorithm(BinTree T,char *value,int index){ //T为指向二叉树根结点的指针 if(T!=NULL){ value[index]=T->data; algorithm(T->lchild,value,2*index); algorithm(T->rchild,value,2*index+1); } }
假设给定二叉树如右图所示。
T为指向该二叉树根结点的指针。
回答下列问题。
(1)
假设已经定义数据char v[16],且将v数组的全部元素初始化为空格字符。写出执行函数调用语句algorithm(T,v,1)之后,v数组中的内容。
(2) 写出在数组v中,E结点的双亲结点及左右孩子结点的下标。
(3) Algorithm算法的基本功能是什么?
(4)
这个算法适用什么场合?