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

Posted 结点

篇首语:一年好景君须记,最是橙黄橘绿时。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 数据结构考研分类复习真题 第六章 答案 (五)[34]相关的知识,希望对你有一定的参考价值。

   .int Count (BiTree  bt) // 非递归遍历求二叉树上的叶子结点个数  int num= ;  BiTree s[]; //s是栈 栈中元素是二叉树结点指针 栈容量足够大  whlie(bt!=null || top> )  while(bt!=null) push(s bt) bt=bt >lchild   //沿左分支向下  if(!StackEmpty(s))  bt=pop(s) if(bt >lchild==null && bt >rchild==null) num++ //叶子结点  bt=bt >rchild      return(num);  //结束Count

   [题目分析]对二叉树的某层上的结点进行运算 采用队列结构按层次遍历最适宜

  int LeafKlevel(BiTree bt int k) //求二叉树bt 的第k(k> ) 层上叶子结点个数  if(bt==null || k< ) return( );  BiTree p=bt Q[];            //Q是队列 元素是二叉树结点指针 容量足够大  int front= rear= leaf= ;  //front 和rear是队头和队尾指针 leaf是叶子结点数  int last= level= ; Q[ ]=p; //last是二叉树同层最右结点的指针 level 是二叉树的层数  while(front<=rear)  p=Q[++front];  if(level==k && !p >lchild && !p >rchild) leaf++; //叶子结点  if(p >lchild) Q[++rear]=p >lchild;                //左子女入队  if(p >rchild) Q[++rear]=p >rchild;               //右子女入队  if(front==last) level++;       //二叉树同层最右结点已处理 层数增   last=rear;    //last移到指向下层最右一元素  if(level>k) return (leaf);               //层数大于k 后退出运行  //while  //结束LeafKLevel

cha138/Article/program/sjjg/201311/23712

相关参考

知识大全 数据结构考研分类复习真题 第六章 答案 (五)[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指向二叉

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

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

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

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

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

  .BiTreeCreat(ElemTypeA[]inti)  //n个结点的完全二叉树存于一维数组A中本算法据此建立以二叉链表表示的完全二叉树  BiTreetree;  if(i<=n)t

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

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