标签:default ati return 代码 尺寸 div ack html accept
已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立二叉树并求二叉树的层次遍历序列。
2 abd,,eg,,,cf,,, xnl,,i,,u,,
abcdefg xnuli
DQE:
先序序列建立二叉树后层序遍历,用到队列,可以使用数组简化代替,定义数组尺寸时注意假溢出即可,水题+1.
附代码:
1 #include <iostream> 2 #include <cstdio> 3 4 using namespace std; 5 6 struct Tree 7 { 8 char c; 9 Tree *lt,*rt; 10 }; 11 12 Tree *creat(char *&xx) 13 { 14 if(*xx==‘\0‘) 15 return NULL; 16 if(*xx==‘,‘) 17 { 18 xx++; 19 return NULL; 20 } 21 Tree *r=new Tree; 22 r->c=*xx++; 23 r->lt=creat(xx); 24 r->rt=creat(xx); 25 return r; 26 } 27 28 void cxvisit(Tree *r) 29 { 30 Tree *que[100]; 31 int i=0,j=0; 32 que[j++]=r; 33 while(i<j) 34 { 35 if(que[i]) 36 { 37 que[j++]=que[i]->lt; 38 que[j++]=que[i]->rt; 39 printf("%c",que[i]->c); 40 } 41 i++; 42 } 43 } 44 45 int main() 46 { 47 Tree *root; 48 int n; 49 scanf("%d",&n); 50 char xx[55],*p; 51 while(n--) 52 { 53 p=xx; 54 scanf("%s",xx); 55 root=creat(p); 56 cxvisit(root); 57 printf("\n"); 58 } 59 return 0; 60 } 61 62 /*************************************************** 63 User name: *** 64 Result: Accepted 65 Take time: 0ms 66 Take Memory: 156KB 67 Submit time: 2016-11-03 18:35:52 68 ****************************************************/
标签:default ati return 代码 尺寸 div ack html accept
原文地址:http://www.cnblogs.com/Mimick/p/6031410.html