2009年5月_填空改错题amp;答题纸.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2009年5月_填空改错题

三、读程序并完成填空(1,2,3,6 2分,4,5每空1分,总计10分)。答案写在答题纸上。 #define MAX(a,b) ((a) ( b) ?( b) :( a)) #define THEIGHT(p) MAX(p-l_childLv,p-r_childLv) void linkParent(LPBSTNODE childTroot,LPBSTNODE parent) { BOOL fromLeft = TRUE; childTroot-parent = parent; if(parent != NULL) { if(childTroot-data parent-data){ parent-lchild = childTroot; } else{ parent-rchild = childTroot; fromLeft = FALSE; } } while(parent != NULL){ if(fromLeft) parent-l_childLv = THEIGHT(parent-lchild) + 1; else parent-r_childLv = THEIGHT(parent-rchild) + 1; parent = parent-parent; } } LPBSTNODE R_Rotate(LPBSTNODE p) { LPBSTNODE lc =p -lchild,pp = p-parent; p-lchild = lc-rchild; if(lc-rchild != NULL) lc-rchild-parent = p; lc -rchild = p; lc-rchild-parent = p-parent;p-parent = lc; int lcrHeight = lc-r_childLv; lc-r_childLv = p-r_childLv + 1; p-l_childLv = (lcrHeight == 0) ? 0 : (lcrHeight ); linkParent(lc,pp); return lc; } LPBSTNODE L_Rotate(LPBSTNODE p) { LPBSTNODE rc =p -rchild, pp = p-parent; p-rchild = rc-lchild; if(rc-lchild != NULL) rc-lchild-parent = p; rc -lchild = p; rc-lchild-parent = p -parent; p-parent = rc; int rclHeight = rc-l_childLv; rc-l_childLv = p-l_childLv + 1; p-r_childLv = (rclHeight == 0) ? 0 : (rclHeight); linkParent(rc,pp); return rc; } LPBSTNODE Add(LPBSTNODE root,int data) { LPBSTNODE newNode = new BSTNODE(); memset(newNode,0,sizeof(BSTNODE)); newNode-data = data; if(____1____) return newNode; LPBSTNODE searchNode = root,curParent = NULL; while(searchNode != NULL){ if(searchNode-data == data){ ____2_____; return root; } curParent = searchNode; if(_____3____ ){ searchNode-l_childLv += MAX(newNode-l_childLv,newNode-r_childLv) + 1; searchNode = searchNode-lchild; } else{ searchNode-r_childLv += MAX(newNode-l_childLv,newNode-r_childLv) + 1; searchNode = searchNode-rchild; } } newNode-parent = curParent; if(newNode-data curParent-data) curParent-lchild = newNode; else curParent-rchild = newNode; searchNode

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档