知识大全 数据结构考研分类复习真题 第六章 答案 (五)[6]

Posted 结点

篇首语:知识养成了思想,思想同时又在融化知识。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 数据结构考研分类复习真题 第六章 答案 (五)[6]相关的知识,希望对你有一定的参考价值。

   .BiTree Creat(ElemType A[] int i)  //n个结点的完全二叉树存于一维数组A中 本算法据此建立以二叉链表表示的完全二叉树  BiTree tree;  if (i<=n)tree=(BiTree)malloc(sizeof(BiNode)); tree >data=A[i];  if( *i>n) tree >lchild=null else tree >lchild=Creat(A *i)   if( *i+ >n) tree >rchild=null else tree >rchild=Creat(A *i+ )      return (tree) //Creat

  [算法讨论]初始调用时 i=

   [题目分析]二叉树高度可递归计算如下 若二叉树为空 则高度为零 否则 二叉树的高度等于左右子树高度的大者加 这里二叉树为空的标记不是null而是 设根结点层号为 则每个结点的层号等于其双亲层号加

  现将二叉树的存储结构定义如下:

  typedef struct node  int L[];//编号为i的结点的左儿子  int R[];//编号为i的结点的右儿子  int D[];//编号为i的结点的层号  int i;  //存储结点的顺序号(下标)  tnode;  ( )int Height(tnode t int i)//求二叉树高度 调用时i=   int lh rh;  if (i== ) return ( );  elselh=Height(t t L[i]); rh=Height(t t R[i]);  if(lh>rh) return(lh+ ); else return(rh+ );    //结束Height

  ( )int Level(tnode t)//求二叉树各结点的层号 已知编号为 的结点是根 且层号为   t D[ ]= ;  for(i= ;i<=n;i++) depth=t D[i]         //取出根结点层号  if(t L[i]!= )   t D[t L[i]]=depth+ ;   //i结点左儿子层号  if(t R[i]!= )   t D[t R[i]]=depth+ ;  //i结点右儿子层号  结束level

cha138/Article/program/sjjg/201311/23736

相关参考

知识大全 数据结构考研分类复习真题 第六章 答案 (五)[23]

  PROCprint(bt:BiTreexy:integer)  //将二叉树逆时针旋转度打印xy是根结点基准坐标调用时xy=  IFbt<>NILTHEN[print(bt↑rchil

知识大全 数据结构考研分类复习真题 第六章 答案 (五)[19]

  intLevel(BiTreebt)//层次遍历二叉树并统计度为的结点的个数  intnum=;//num统计度为的结点的个数  if(bt)QueueInit(Q);QueueIn(Qbt)//

知识大全 数据结构考研分类复习真题 第六章 答案 (五)[47]

  .BiThrTreeInSucc(BiThrTreeTp) //在对称序穿线树T中查找给定结点p的中序后继  if(p>rtag==)q=p>rchild; &nb

知识大全 数据结构考研分类复习真题 第六章 答案 (五)[33]

  intBTLC(BiTreeTint*c)//对二叉树T的结点计数  if(T)  *c++;  BTLC(T>lchild&c);//统计左子树结点  BTLC(T>rchi

知识大全 数据结构考研分类复习真题 第六章 答案 (五)[45]

  voidInOrderThreat(BiThrTreethrt)  //thrt是指向中序全线索化头结点的指针本算法中序遍历该二叉树  p=thrt>lchild; //p指向二叉

知识大全 数据结构考研分类复习真题 第六章 答案 (五)[34]

  .intCount(BiTree bt)//非递归遍历求二叉树上的叶子结点个数  intnum=;  BiTrees[];//s是栈栈中元素是二叉树结点指针栈容量足够大  whlie(b

知识大全 数据结构考研分类复习真题 第六章 答案 (五)[25]

  [题目分析]知二叉树中序序列与后序序列第题以递归算法建立了二叉树本题是非递归算法  voidInPostCreat(ElemTypeIN[]POST[]intlhlh)  //由二叉树的中序序列I

知识大全 数据结构考研分类复习真题 第六章 答案 (五)[15]

  [题目分析]先序遍历二叉树的非递归算法要求进栈元素少意味着空指针不进栈  voidPreOrder(Bitree bt)//对二叉数bt进行非递归遍历  inttop=;Bitrees[

知识大全 数据结构考研分类复习真题 第六章 答案 (五)[4]

  .[题目分析]当森林(树)以孩子兄弟表示法存储时若结点没有孩子(fch=null)则它必是叶子总的叶子结点个数是孩子子树(fch)上的叶子数和兄弟(nsib)子树上叶结点个数之和  typedef