ºó¼ÌÏßË÷µÄÖ¸Õë¡£19. 1£¬RChild
20. ±¾½ÚÖÐÎÒÃÇѧϰµÄÊ÷µÄ´æ´¢½á¹¹ÓÐ_____________¡¢___________ºÍ___________¡£20. º¢×Ó±íʾ·¨£¬Ë«Ç×±íʾ·¨£¬³¤×ÓÐֵܱíʾ·¨
ËÄ¡¢Ó¦ÓÃÌâ
1. ÒÑÖªÒ»¿ÃÊ÷±ßµÄ¼¯ºÏΪ{£¬£¬
£¨1£©ÄĸöÊǸù½áµã£¿ £¨2£©ÄÄЩÊÇÒ¶×Ó½áµã£¿ £¨3£©ÄĸöÊǽáµãgµÄË«Ç×£¿ £¨4£©ÄÄЩÊǽáµãgµÄ×æÏÈ£¿ £¨5£©ÄÄЩÊǽáµãgµÄº¢×Ó£¿ £¨6£©ÄÄЩÊǽáµãeµÄº¢×Ó£¿
£¨7£©ÄÄЩÊǽáµãeµÄÐֵܣ¿ÄÄЩÊǽáµãfµÄÐֵܣ¿ £¨8£©½áµãbºÍnµÄ²ã´ÎºÅ·Ö±ðÊÇʲô£¿ £¨9£©Ê÷µÄÉî¶ÈÊǶàÉÙ£¿
£¨10£©ÒÔ½áµãcΪ¸ùµÄ×ÓÊ÷Éî¶ÈÊǶàÉÙ£¿ 1. ½â´ð£º ¸ù¾Ý¸ø¶¨µÄ±ßÈ·¶¨µÄÊ÷Èçͼ5-15Ëùʾ¡£ a ÆäÖиù½áµãΪa£» c b Ò¶×Ó½áµãÓУºd¡¢m¡¢n¡¢j¡¢k¡¢f¡¢l£»
cÊǽáµãgµÄË«Ç×£»
g f h d e
a¡¢cÊǽáµãgµÄ×æÏÈ£»
j¡¢kÊǽáµãgµÄº¢×Ó£» i i k j m¡¢nÊǽáµãeµÄ×ÓË
m n eÊǽáµãdµÄÐֵܣ»
g¡¢hÊǽáµãfµÄÐֵܣ»
ͼ5-15
½áµãbºÍnµÄ²ã´ÎºÅ·Ö±ðÊÇ2ºÍ5£» Ê÷µÄÉî¶ÈΪ5¡£
2. Ò»¿Ã¶ÈΪ2µÄÊ÷ÓëÒ»¿Ã¶þ²æÊ÷ÓкÎÇø±ð¡£ 2. ½â´ð£º ¶ÈΪ2µÄÊ÷ÓÐÁ½¸ö·ÖÖ§£¬µ«·Ö֧ûÓÐ×óÓÒÖ®·Ö£»Ò»¿Ã¶þ²æÊ÷Ò²ÓÐÁ½¸ö·ÖÖ§£¬µ«ÓÐ×óÓÒÖ®·Ö£¬×óÓÒ×ÓÊ÷²»Äܽ»»»¡£
3. ÊÔ·Ö±ð»³ö¾ßÓÐ3¸ö½áµãµÄÊ÷ºÍ¶þ²æÊ÷µÄËùÓв»Í¬ÐÎ̬£¿ 3. ½â´ð£º ÂÔ
4. ÒÑÖªÓÃһάÊý×é´æ·ÅµÄÒ»¿ÃÍêÈ«¶þ²æÊ÷£ºABCDEFGHIJKL£¬Ð´³ö¸Ã¶þ²æÊ÷µÄÏÈÐò¡¢ÖÐÐòºÍºóÐò±éÀúÐòÁС£ 4. ½â´ð£º
ÏÈÐòÐòÁУºABDHIEJKCFLG ÖÐÐòÐòÁУºHDIBJEKALFCG
ºóÐòÐòÁУºHIDJKEBLFGCA
5. Ò»¿ÃÉî¶ÈΪHµÄÂúk²æÊ÷ÓÐÈçÏÂÐÔÖÊ£ºµÚH²ãÉϵĽáµã¶¼ÊÇÒ¶×Ó½áµã£¬ÆäÓà¸÷²ãÉÏÿ¸ö½áµã¶¼ÓÐk¿Ã·Ç¿Õ×ÓÊ÷£¬Èç¹û°´²ã´Î×ÔÉÏÖÁÏ£¬´Ó×óµ½ÓÒ˳Ðò´Ó1¿ªÊ¼¶ÔÈ«²¿½áµã±àºÅ£¬»Ø´ðÏÂÁÐÎÊÌ⣺
£¨1£©¸÷²ãµÄ½áµãÊýÄ¿ÊǶàÉÙ£¿
£¨2£©±àºÅΪnµÄ½áµãµÄ¸¸½áµãÈç¹û´æÔÚ£¬±àºÅÊǶàÉÙ£¿
£¨3£©±àºÅΪnµÄ½áµãµÄµÚi¸öº¢×Ó½áµãÈç¹û´æÔÚ£¬±àºÅÊǶàÉÙ£¿
£¨4£©±àºÅΪnµÄ½áµãÓÐÓÒÐֵܵÄÌõ¼þÊÇʲô£¿ÆäÓÒÐֵܵıàºÅÊǶàÉÙ£¿ 5. ½â´ð£º £¨1£©µÚi²ãÉϵĽáµãÊýÄ¿ÊÇmi-1¡£
£¨2£©±àºÅΪnµÄ½áµãµÄ¸¸½áµãÈç¹û´æÔÚ£¬±àºÅÊÇ((n-2)/m)+1¡£
£¨3£©±àºÅΪnµÄ½áµãµÄµÚi¸öº¢×Ó½áµãÈç¹û´æÔÚ£¬±àºÅÊÇ(n-1)*m+i+1¡£
£¨4£©±àºÅΪnµÄ½áµãÓÐÓÒÐֵܵÄÌõ¼þÊÇ(n-1)%m¡Ù0¡£ÆäÓÒÐֵܵıàºÅÊÇn+1¡£
6. ÕÒ³öËùÓÐÂú×ãÏÂÁÐÌõ¼þµÄ¶þ²æÊ÷£º
£¨1£©ËüÃÇÔÚÏÈÐò±éÀúºÍÖÐÐò±éÀúʱ£¬µÃµ½µÄ±éÀúÐòÁÐÏàͬ£» £¨2£©ËüÃÇÔÚºóÐò±éÀúºÍÖÐÐò±éÀúʱ£¬µÃµ½µÄ±éÀúÐòÁÐÏàͬ£» £¨3£©ËüÃÇÔÚÏÈÐò±éÀúºÍºóÐò±éÀúʱ£¬µÃµ½µÄ±éÀúÐòÁÐÏàͬ£» 6. ½â´ð£º £¨1£©ÏÈÐòÐòÁкÍÖÐÐòÐòÁÐÏàͬµÄ¶þ²æÊ÷Ϊ£º¿ÕÊ÷»òÕßÈÎÒ»½áµã¾ùÎÞ×óº¢×ӵķǿնþ²æÊ÷£» £¨2£©ÖÐÐòÐòÁкͺóÐòÐòÁÐÏàͬµÄ¶þ²æÊ÷Ϊ£º¿ÕÊ÷»òÕßÈÎÒ»½áµã¾ùÎÞÓÒº¢×ӵķǿնþ²æÊ÷£» £¨3£©ÏÈÐòÐòÁкͺóÐòÐòÁÐÏàͬµÄ¶þ²æÊ÷Ϊ£º¿ÕÊ÷»ò½öÓÐÒ»¸ö½áµãµÄ¶þ²æÊ÷¡£
7. ¼ÙÉèÒ»¿Ã¶þ²æÊ÷µÄÏÈÐòÐòÁÐΪEBADCFHGIKJ£¬ÖÐÐòÐòÁÐΪABCDEFGHIJK£¬Çëд³ö¸Ã¶þ²æÊ÷µÄºóÐò±éÀúÐòÁС£
7. ½â´ð£ººóÐòÐòÁУºACDBGJKIHFE
8. ¼ÙÉèÒ»¿Ã¶þ²æÊ÷µÄºóÐòÐòÁÐΪDCEGBFHKJIA£¬ÖÐÐòÐòÁÐΪDCBGEAHFIJK£¬Çëд³ö¸Ã¶þ²æÊ÷µÄºóÐò±éÀúÐòÁС£
8. ½â´ð£ºÏÈÐòÐòÁУºABCDGEIHFJK
9. ¸ø³öÈçͼ5-14ËùʾµÄÉÁÖµÄÏȸù¡¢ºó¸ù±éÀú½áµãÐòÁУ¬È»ºó»³ö¸ÃÉÁÖ¶ÔÓ¦µÄ¶þ²æÊ÷¡£
9. ½â´ð£º Ïȸù±éÀú£ºABCDEFGHIJKLMNO ºó¸ù±éÀú£ºBDEFCAHJIGKNOML ÉÁÖת»»³É¶þ²æÊ÷Èçͼ5-16Ëùʾ¡£
10£®¸ø¶¨Ò»×éȨֵ£¨5£¬9£¬11£¬2£¬7£¬16£©£¬ÊÔÉè¼ÆÏàÓ¦µÄ¹þ·òÂüÊ÷¡£ 10. ½â´ð£º¹¹Ôì¶ø³ÉµÄ¹þ·òÂüÊ÷Èçͼ5-17Ëùʾ¡£
A
G
C
K I
L
B
H
M D
E
F
J
N
O
Îå¡¢Ëã·¨Éè¼ÆÌâ
1. Ò»¿Ã¾ßÓÐn¸ö½áµãµÄÍêÈ«¶þ²æÊ÷ÒÔһάÊý×é×÷Ϊ´æ´¢½á¹¹£¬ÊÔÉè¼ÆÒ»¸ö¶Ô¸ÃÍêÈ«¶þ²æÊ÷½øÐÐÏÈÐò±éÀúµÄËã·¨¡£
1. ½â´ð£ºÕâ¸öÎÊÌâ¿ÉÒÔÓõݹéËã·¨£¬Ò²¿ÉÓ÷ǵݹéËã·¨£¬ÏÂÃæ¸ø³öµÄΪ·ÇµÝ¹éËã·¨¡£¼ÙÉè¸ÃÍêÈ«¶þ²æÊ÷µÄ½áµãÒÔ²ã´ÎΪÐò£¬°´ÕÕ´ÓÉϵ½Ï£¬Í¬²ã´Ó×óµ½ÓÒ˳Ðò±àºÅ£¬´æ·ÅÔÚÒ»¸öһάÊý×éR[1..n]ÖУ¬ÇÒÓÃÒ»¸öÓÐ×ã¹»´óÈÝÁ¿ÎªmaxlenµÄ˳ÐòÕ»×÷¸¨Öú´æ´¢£¬Ëã·¨ÃèÊöÈçÏ£º
preorder (R) //ÏÈÐò±éÀú¶þ²æÊ÷R int R[n]; { int root;
SqStack *s; //sΪһ¸öÖ¸ÕëÕ»£¬ÀàÐÍΪseqstack£¬ÆäÖаüº¬topÓòºÍÊý×édata s->top= -1; //sÕ»ÖÃ¿Õ root=1;
while ((root<=n) && (s->top>-1)) { while (root<=n) { printf(R[root]); } }
s->top++; }
if (s->top>-1) //Õ»·Ç¿Õ·ÃÎÊ£¬±éÀúÓÒ×ÓÊ÷ { root=s->data[s->top]*2+1; s->top--; }
s->data[s->top]=root; root=2*root;
2. ¸ø¶¨Ò»¿ÃÓöþ²æÁ´±í±íʾµÄ¶þ²æÊ÷£¬ÆäÖеÄÖ¸ÕëtÖ¸Ïò¸ù½áµã£¬ÊÔд³ö´Ó¸ù¿ªÊ¼£¬°´²ã´Î±éÀú¶þ²æÊ÷µÄËã·¨£¬Í¬²ãµÄ½áµã°´´Ó×óÖÁÓҵĴÎÐò·ÃÎÊ¡£
2. ½â´ð£º¿¼ÂÇÓÃÒ»¸ö˳Ðò¶ÓqueÀ´±£´æ±éÀú¹ý³ÌÖеĸ÷¸ö½áµã£¬ÓÉÓÚ¶þ²æÊ÷ÒÔ¶þ²æÁ´±í´æ´¢£¬ËùÒÔ¿ÉÉèqueΪһ¸öÖ¸ÏòÊý¾ÝÀàÐÍΪbitreeµÄÖ¸ÕëÊý×飬×î´óÈÝÁ¿Îªmaxnum£¬Ï±ê´Ó1¿ªÊ¼£¬Í¬²ã½áµã´Ó×óµ½ÓÒ´æ·Å¡£Ëã·¨ÖеÄfrontΪ¶ÓÍ·Ö¸Õ룬rearΪ¶ÓβָÕë¡£
levelorder (BiTree *t) //°´²ã´Î±éÀú¶þ²æÊ÷t { BiTree *que[maxnum]; int rear,front; if (t!=NULL)
{ front=0; //ÖÿնÓÁÐ rear=1; que[1]=t; do
{ front=front%maxsize+1; //³ö¶Ó t=que[front]; printf(t->data);
if (t->lchild!=NULL) //×ó×ÓÊ÷µÄ¸ù½áµãÈë¶Ó { rear=rear%maxsize+1;
que[rear]=t->lchild; }
if (t->rchild!=NULL) //ÓÒ×ÓÊ÷µÄ¸ù½áµãÈë¶Ó { rear=rear%maxsize+1; que[rear]=t->rchild;
}
}while (rear= =front); //¶ÓÁÐΪ¿Õʱ½áÊø }
}
3. д³öÔÚÖÐÐòÏßË÷¶þ²æÊ÷ÖнáµãPµÄÓÒ×ÓÊ÷ÖвåÈëÒ»¸ö½áµãsµÄËã·¨¡£
3. ½â´ð£ºÉè¸ÃÏßË÷¶þ²æÊ÷ÀàÐÍΪbithptr£¬°üº¬5¸öÓò£ºlchild£¬ltag£¬data£¬rchild£¬rtag¡£
insert(p, s) //½«s½áµã×÷ΪpµÄÓÒ×ÓÊ÷²åÈë BiThrNode *p,*s; { BiThrNode *q;
if (p->rtag= =1) //ÎÞÓÒ×ÓÊ÷£¬ÔòÓÐÓÒÏßË÷ { s->rchild=p->rchild; s->rtag=1; p->rchild=s; p->rtag=0; } else
{ q=p->rchild;
while(q->ltag= =0) //²éÕÒpËùÖ¸½áµãÖÐÐòºó¼Ì£¬¼´ÎªÆäÓÒ×ÓÊ÷ÖÐ×î×óϵĽáµã
q=q->lchild; q->lchild=p->rchild; s->rtag=0; p->rchild=s; }
s->lchild=p; //½«s½áµãµÄ×óÏßË÷Ö¸Ïòp½áµã s->ltag=1; }
4. ¸ø¶¨Ò»¿Ã¶þ²æÊ÷£¬Óöþ²æÁ´±í±íʾ£¬Æä¸ùÖ¸ÕëΪt£¬ÊÔд³öÇó¸Ã¶þ²æÊ÷ÖнáµãnµÄË«Ç×½áµãµÄËã·¨¡£ÈôûÓнáµãn»òÕ߸ýáµãûÓÐË«Ç×½áµã£¬·Ö±ðÊä³öÏàÓ¦µÄÐÅÏ¢£»Èô½áµãnÓÐË«Ç×£¬Êä³öÆäË«Ç×µÄÖµ¡£
4. ½â´ð£ºÀûÓÃÒ»¸ö¶ÓÁÐÀ´Íê³É£¬Éè¸Ã¶ÓÁÐÀàÐÍΪָÕëÀàÐÍ£¬×î´óÈÝÁ¿Îªmaxnum¡£Ëã·¨ÖеÄfrontΪ¶ÓÍ·Ö¸Õ룬rearΪ¶ÓβָÕ룬Èôµ±Ç°¶ÓÍ·½áµãµÄ×ó¡¢ÓÒ×ÓÊ÷µÄ¸ù½áµã²»ÊÇËùÇó½áµã£¬