(zhn)现在的位置Q?/strong> 跨考网频道考研报名正文

数据l构W六章算法设计题[22]_跨考网

最后更新时_(x)2011-12-06 18:21:42
辅导评Q?a target="_blank" rel="nofollow">暑期集训 在线咨询
复习(fn)紧张Q焦头烂额?逆风轻袭Q来跨考秋季集训营Q帮你寻Ҏ(gu)Q定Ҏ(gu)Q?/span> 了解一?>

   1Q请设计一个算法,要求该算法把二叉?wi)的叶子l点按从左到右的序q成一个单链表Q表头指针ؓ(f)head?/span> 二叉?wi)按二叉链表方式存储Q链接时用叶子结点的x针域来存攑֍链表指针。分析你的算法的时、空复杂度。?a target="_blank">华南师范大学 1999 六?/span>2 Q?/span>13分)?/span>

  【参考答案?/span>

  [题目分析]叶子l点只有在遍历中才能知道Q这里用中序递归遍历。设|前qҎ(gu)?/span>preQ初始ؓ(f)I。第一个叶子结点由指针head指向Q遍历到叶子l点Ӟ将它前qrchild指针指向它,最后叶子结点的rchild为空?/span>

  LinkedList head,pre=null; //全局变量

  LinkedList InOrder(BiTree bt)

  //中序遍历二叉?/span>btQ将叶子l点从左到右链成一个单链表Q表头指针ؓ(f)head

  {if(bt){InOrder(bt->lchild); //中序遍历左子?/span>

  if(bt->lchild==null && bt->rchild==null) //叶子l点

  if(pre==null) {head=bt; pre=bt;} //处理W一个叶子结?/span>

  else{pre->rchild=bt; pre=bt; } //叶子结炚w入链?/span>

  InOrder(bt->rchild); //中序遍历左子?/span>

  pre->rchild=null; //讄链表?/span>

  }

  return(head); } //InOrder

  旉复杂度ؓ(f)O(n),辅助变量使用head?/span>pre,栈空间复杂度O(n)

跨考考研评

班型 定向班型 开班时?/td> 高定?/td> 标准?/td> 评介绍 咨询
U季集训 冲刺?/td> 9.10-12.20 168000 24800?/td> 班面授+专业??+专业译֮向辅?协议加强评(高定?+专属规划{疑(高定?+_化答?复试资源(高定?+复试译֌(高定?+复试指导(高定?+复试班主?v1服务(高定?+复试面授密训(高定?+复试1v1(高定?
2023集训畅学 非定向(政英?数政qQ?/td> 每月20?/td> 22800?协议? 13800?/td> 先行阶在U课E?基础阶在U课E?强化阶在U课E?真题阶在U课E?冲刺阶在U课E?专业NҎ(gu)一对一评+班主dE督学服?全程规划体系+全程试体系+全程_化答?择校择专业能力定位体p?全年关键环节指导体系+初试加强?初试专属服务+复试全科标准班服?/td>

①凡本网注明“稿件来源:(x)跨考网”的所有文字、图片和韌频稿Ӟ版权均属北京学博教育咨询有限公司Q含本网和跨考网Q所有,M媒体、网站或个h未经本网协议授权不得转蝲、链接、{帖或以其他Q何方式复制、发表。已l本|协议授权的媒体、网站,在下载用时必须注明“稿件来源,跨考网”,q者本|将依法q究法律责Q?/p>

②本|未注明“稿件来源:(x)跨考网”的?囄Eg均ؓ(f)转蝲E,本网转蝲仅基于传递更多信息之目的Qƈ不意味着再通{载稿的观Ҏ(gu)证实其内容的真实性。如其他媒体、网站或个h从本|下载用,必须保留本网注明的“稿件来源”,q自负版权等法律责Q。如擅自改为“稿件来源:(x)跨考网”,本网依法追I法律责仅R?/p>

③如本网转蝲E涉及版权等问题Q请作者见E后在两周内速来?sh)与跨考网联系Q电(sh)话:(x)400-883-2220