二叉树层次遍历,要求空间复杂度O(一),时间复杂度O(n)

二叉树层次遍历,要求空间复杂度O(1),时间复杂度O(n)
二叉树层次遍历,要求空间复杂度O(1),时间复杂度O(n),请大家帮忙给个算法,谢谢

------解决方案--------------------
利用队列啊.
头结点入队列,#入队列.

每次取队首,然后把孩子全部入队列,遇到#的时候说明上一行已经结束了,当前行要开始了,所以此刻应该再插入一个#

------解决方案--------------------
用队列吧
1. Status LevelTraverseBiTree(BiTree T)  
2. {   LinkQueue Q;  
3.     InitQueue(Q);  
4.     BiTree u;  
5.     u=(BiTree)malloc(sizeof(BiTNode));  
6.     EnQueue(Q, T);  
7.       while(Q.front!=Q.rear)  
8. {   
9.         DeQueue(Q, u);  
10.         printf("%c",u->data);  
11. if(u->lchild)  
12.     EnQueue(Q, u->lchild);  
13. if(u->rchild)  
14.        EnQueue(Q, u->rchild);  
15. }