上海嘉定区网站建设公司,美食网站的建设,网站 后台,学院网站建设总结满意答案Dcool2016.08.27采纳率#xff1a;58% 等级#xff1a;9已帮助#xff1a;416人队列#xff1f;#xff1f;你每输入一个节点将其存入队列中#xff0c;再输入它的左孩子#xff0c;它的左孩子也会入队#xff0c;我们取的时候应先取该节点的左孩子#xf…满意答案Dcool2016.08.27采纳率58% 等级9已帮助416人队列你每输入一个节点将其存入队列中再输入它的左孩子它的左孩子也会入队我们取的时候应先取该节点的左孩子LZ一定要用队列也行但绝对不是正确的选择队列如下123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990#include using namespace std;typedef struct bitnode{ char data; struct bitnode *lchild,*rchild;}*bitree,tree;int number0;void createbitree(bitree t){ char c; int i0,r0,f0;//r,f分别指向队首和队尾 bitree pNULL,tempNULL,preNULL,s[100]; s[0]NULL; int lflag[100]{0}; int rflag[100]{0}; printf(请输入根节点); tnew tree; t-lchildt-rchildNULL; scanf(%c,t-data); temppret-lchild; s[i]t; fi; p t; while(f!r) { if(p-lchildNULLlflag[i]0) { printf(请输入%c的左孩子:,p-data); fflush(stdin); scanf(%c,c); if(c!#) { p-lchild new tree; p p-lchild; p-lchildp-rchildNULL; p-data c; s[f]p; i f; lflag[i]rflag[i]0; } else lflag[i]1; } else if(p-rchildNULLrflag[i]0) { printf(请输入%c的右孩子:,p-data); fflush(stdin); scanf(%c,c); if(c!#) { p-rchild new tree; p p-rchild; p-lchildp-rchildNULL; p-data c; s[f]p; if; lflag[i]rflag[i]0; } else { rflag[i]1; ps[r]; ir; } } else { ps[r]; ir; } }}void preorder(bitree t)//遍历二叉树输出函数{ if (t!0) { coutdatalchild); preorder(t-rchild); }}void main(){ bitree t; t0; createbitree(t); cout在此强烈建议LZ用栈更符合树的输入层次1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283#include using namespace std;typedef struct bitnode{ char data; struct bitnode *lchild,*rchild;}*bitree,tree;int number0;void createbitree(bitree t){ char c; int i0; bitree pNULL,tempNULL,preNULL,s[100]; s[0]NULL; int lflag[100]{0}; int rflag[100]{0}; printf(请输入根节点); tnew tree; t-lchildt-rchildNULL; scanf(%c,t-data); temppret-lchild; s[i]t; p t; while(s[i]!NULL) { if(p-lchildNULLlflag[i]0) { printf(请输入%c的左孩子:,p-data); fflush(stdin); scanf(%c,c); if(c!#) { p-lchild new tree; p p-lchild; p-lchildp-rchildNULL; p-data c; s[i]p; lflag[i]rflag[i]0; } else lflag[i]1; } else if(p-rchildNULLrflag[i]0) { printf(请输入%c的右孩子:,p-data); fflush(stdin); scanf(%c,c); if(c!#) { p-rchild new tree; p p-rchild; p-lchildp-rchildNULL; p-data c; s[i]p; lflag[i]rflag[i]0; } else { rflag[i]1; ps[--i]; } } else ps[--i]; }}void preorder(bitree t)//遍历二叉树输出函数{ if (t!0) { coutdatalchild); preorder(t-rchild); }}void main(){ bitree t; t0; createbitree(t); cout不懂追问你的疑问往往是我要学习的地方追问 附件失效了追答逗……服了百度……老是出事不行啊传不上去你QQ多少……我发邮件01分享举报