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

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

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

1Q编E求以孩子—兄弟表C法存储的森林的叶子l点数。要求描q结构。?a target="_blank">北京工业大学2000?/span>(10?/span>)?/span>

  【参考答案?/span>

  [题目分析]当森林(?wi))以孩子兄弟表C法存储Ӟ若结Ҏ(gu)有孩子(fch=nullQ?/span>,则它必是叶子Qȝ叶子l点个数是孩子子?wi)?/span>fchQ上的叶子数和兄弟(nsibQ子?wi)上叶结点个C和?/span>

  typedef struct node

  {ElemType data;//数据?/span>

  struct node *fch, *nsib;//孩子与兄弟域 }*Tree;

  int Leaves (Tree t)

  //计算以孩?/span>-兄弟表示法存储的林的叶子数

  {if(t)

  if(t->fch==null) //若结Ҏ(gu)孩子Q则该结点必是叶?/span>

  return(1+Leaves(t->nsib)); //q回叶子l点和其兄弟子树(wi)中的叶子l点?/span>

  else return (Leaves(t->fch)+Leaves(t->nsib)); //孩子子树(wi)和兄弟子?wi)中叶子C?/span>

  }//l束Leaves

  

  

  2Q假定用两个一l数l?/span>L[N]?/span>R[N]作ؓ(f)?/span>N个结?/span>1Q?/span>2,…, N的二元树(wi)的存储结构?/span>L[i]?/span>R[i]分别指示l点 i的左儿子和右儿子Q?/span>L[i]=0Q?/span>R[i]=0Q表C?/span>i的左Q右Q儿子ؓ(f)I。试写一个算法,?/span>L?/span>R建立一个一l数l?/span>T[n]QT[i]存放l点i的父Ԍ然后再写一个判别结?/span>U是否为结?/span>V的后代的法。?a target="_blank">哈尔滨工业大?/a> 1999 ?/span> (14?/span>)?/span>

    【参考答案?/span>

  [题目分析]由指C结?/span>i 左儿子和叛_子的两个一l数l?/span>L[i]?/span>R[i]Q很Ҏ(gu)建立指示l点i 的双亲的一l数l?/span>T[i]Q根?/span>T数组Q判断结?/span>U是否是结?/span>V后代的算法,转ؓ(f)判断l点V是否是结?/span>U的祖先的问题?/span>

  int Generation (int U,V,N,L[],R[],T[])

  //L[]?/span>R[]是含?/span>N个元素且指示二叉?wi)结?/span>i左儿子和叛_子的一l数l,

  //本算法据此徏立结?/span>i的双亲数l?/span>TQƈ判断l点U是否是结?/span>V的后代?/span>

  {for(i=1;i<=N;i++) T[i]=0; //T数组初始?/span>

  for (i=1;i<=N;i++) //Ҏ(gu)L?/span>R填写T

  if(L[i]!=0) T[L[i]]=i; //若结?/span>i的左子女?/span>LQ则l点L的双亲是l点i

  for(i=1;i<=N;i++)

  if (R[i]!=0) T[R[i]]=i; //i的右子女?/span>rQ则r的双亲是i

  int parent=U; //判断U是否?/span>V的后?/span>

  while (parent!=V && parent!=0) parent=T[parent];

  if (parent==V){printf(“结?/span>U是结?/span>V的后代?/span>);return(1);}

  else{ printf(“结?/span>U不是l点V 的后代?/span>);return(0);}

  }l束Generation

跨考考研评

班型 定向班型 开班时?/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涉?qing)版权等问题Q请作者见E后在两周内速来?sh)与跨考网联系Q电(sh)话:(x)400-883-2220