¶þ²æÊ÷¼°ÆäÓ¦Óã¨Ëã·¨ÓëÊý¾Ý½á¹¹¿Î³ÌÉè¼Æ£© ÏÂÔر¾ÎÄ

printf(\ 1.ÐÞ¸ÄÉúÈÕ\\n\\ 2.Ð޸ĵ绰\\n\\ 3.ÐÞ¸ÄѧºÅ\\n\\ 4.²»ÐÞ¸Ä\\n\

scanf(\ switch(caseflag) {case 1:

printf(\ÇëÊäÈëÐ޸ĺóµÄÉúÈÕ:\ scanf(\

strcpy(ModifyNode->data.date,Mod); break; case 2:

printf(\ÇëÊäÈëÐ޸ĺóµÄµç»°:\ scanf(\

strcpy(ModifyNode->data.phone,Mod); break; case 3:

printf(\ÇëÊäÈëÐ޸ĺóµÄѧºÅ:\ scanf(\

strcpy(ModifyNode->data.StudentNum,Mod); break;

case 4:return;} } } }

/****ɾ³ý¶þ²æÊ÷****/

void DeleteTree(BiTree T)

{ char ch[20]; PBTNode DelNodeFather,DelNode,p,q;int flag; printf(\ÇëÊäÈëҪɾ³ýÐÅÏ¢µÄÐÕÃû:\ DelNode=SearchTree(T,ch); if(!DelNode)

printf(\²éÕÒµÄÐÕÃû²»´æÔÚ\\n\ else

{if (T==DelNode)

{if(DelNode->left) {p=DelNode->left; while(p->right) {p=p->right;}

p->right=DelNode->right; q=DelNode->left; *DelNode=*q; q->left=NULL; q->right=NULL;

wilyes11ÊÕ¼¯ ²©¿Í(ÓëѧϰÎÞ¹Ø)£ºhttp://blog.sina.com.cn/u/1810231802

free(q);}

else if(DelNode->right) { q=DelNode->right; *DelNode=*q; q->left=NULL; q->right=NULL; free(q);}

else { strcpy(T->data.name,\ÎÞ\

strcpy(T->data.StudentNum,\ÎÞ\ strcpy(T->data.date,\ÎÞ\ strcpy(T->data.phone,\ÎÞ\ } else

{ DelNodeFather=SearchFather(DelNode,T,&flag); if(DelNode->left) {p=DelNode->left; while (p->right) {p=p->right;}

p->right=DelNode->right; q=DelNode->left; *DelNode=*q; q->left=NULL; q->right=NULL; free(q);}

else{ q=DelNode->right; if(q)

{ *DelNode=*q; q->left=NULL; q->right=NULL; free(q);}

else{ free(DelNode);

if (flag==0) DelNodeFather->left=NULL; if (flag==1) DelNodeFather->right=NULL;} } }

printf(\ɾ³ýÖ¸¶¨ÐÕÃûºóµÄͬѧ¼\\n\ } }

/****Ö÷º¯Êý****/ void main() { BiTree T; Int caseflag; char ch[20];

DataType x={\ÖÜÎå\

wilyes11ÊÕ¼¯ ²©¿Í(ÓëѧϰÎÞ¹Ø)£ºhttp://blog.sina.com.cn/u/1810231802

DataType items[4]={

{\ÕÔÒ»\ {\Ç®¶þ\ {\ËïÈý\ {\ÀîËÄ\ CreateBiTree(items,&T);

printf(\ÏÈÐò±éÀú:\\n\

while(1){ printf(\ 1.°´ÐÕÃû²éÕÒ\\n\\ 2.ÐÂÔöͬѧÐÅÏ¢\\n\\ 3.ÐÞ¸ÄͬѧÐÅÏ¢\\n\\ 4.ɾ³ýͬѧÐÅÏ¢\\n\\ 5.Í˳ö\\n\\n\

scanf(\ switch(caseflag) {case 1:

printf(\ÇëÊäÈëÒª²éÕÒµÄÐÕÃû:\ if(!SearchTree(T,ch))

printf(\²éÕÒµÄÐÕÃû²»´æÔÚ\\n\ break; case 2:

printf(\ÐÂÔö:\\n\ InsertChild(T,x); PreOrderTraverse(T); break; case 3:

ModifyTree(T);

PreOrderTraverse(T); break; case 4:

DeleteTree(T);

PreOrderTraverse(T); break; case 5:return;} } }

°Ë¡¢²âÊÔ½á¹û£º

2¡¢ÔÚ˳Ðò¶þ²æÊ÷ÖÐÇó½â½ÚµãËùÔÚ²ã´ÎÊý¡£

wilyes11ÊÕ¼¯ ²©¿Í(ÓëѧϰÎÞ¹Ø)£ºhttp://blog.sina.com.cn/u/1810231802

I

3¡¢ÔÚÁ´Ê½¶þ²æÊ÷ÖÐÇó½â½ÚµãËùÔÚ²ã´ÎÊý¡£

4¡¢ÒÔͬѧ¼ΪÀý£¬ÀûÓöþ²æÊ÷´æ´¢½á¹¹ÊµÏÖ½¨Á¢¡¢²éÕÒ¡¢ÐÂÔö¡¢Ð޸ġ¢É¾³ýµÈ¹¦ÄÜ¡£ (1)½¨Á¢:

2¡¢²éÕÒ£º

3¡¢ÐÂÔö£º

wilyes11ÊÕ¼¯ ²©¿Í(ÓëѧϰÎÞ¹Ø)£ºhttp://blog.sina.com.cn/u/1810231802