我已经编写了一个代码来使用队列(数组)按级别顺序打印树。
void printLevelOrder(node *root) {
node* queue[10];
node*t=root;
int y=0;
queue[y]=t;
for(int i=0;i<10;i++)
{
printf("%d,",queue[i]->val);
t=queue[i];
if((t->left)!=NULL){
queue[++y]=t->left;
}
if((t->right)!=NULL){
queue[++y]=t->right;
}
}
}
我想将该方法转换为递归方法。我试过了,但我没有得到正确的解决方案。是否可以将此类问题转换为使用递归调用?