题目:输入一颗二叉树,从上往下按层打印树的每个节点,同一层中按照从左往右的顺序打印。代码如下:
#define MAXLEN 100
void leveltraverse (tree *head) {
tree *temp = head;
tree *queue[MAXLEN];
int rear, front;
rear = front = 0;
if (NULL == head)
return;
queue[rear++] = head;
while (rear != front) {
printf("%d", queue[front]->element);
if (queue[front] -> left != NULL)
//insert
if (queue[front] -> right != NULL)
//insert
front = (front + 1) % MAXLEN;
}
return;
}