知识大全 数据结构考研分类复习真题 第六章 答案 (五)[11]
Posted 知
篇首语:欠伸展肢体,吟咏心自愉。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 数据结构考研分类复习真题 第六章 答案 (五)[11]相关的知识,希望对你有一定的参考价值。
.[题目分析]由孩子兄弟链表表示的树 求高度的递归模型是 若树为空 高度为零 若第一子女为空 高度为 和兄弟子树的高度的大者 否则 高度为第一子女树高度加 和兄弟子树高度的大者 其非递归算法使用队列 逐层遍历树 取得树的高度
int Height(CSTree bt) //递归求以孩子兄弟链表表示的树的深度 int hc hs; if (bt==null) return ( ); else if (!bt >firstchild) return ( +height(bt >nextsibling);//子女空 查兄弟的深度 else // 结点既有第一子女又有兄弟 高度取子女高度+ 和兄弟子树高度的大者 hc=height(bt >firstchild) //第一子女树高 hs=height(bt >nextsibling) //兄弟树高 if(hc+ >hs)return(hc+ ); else return (hs); //结束height int height(CSTree t) //非递归遍历求以孩子兄弟链表表示的树的深度 if(t==null) return( ); elseint front= rear= ; //front rear是队头队尾元素的指针 int last= h= ; //last指向树中同层结点中最后一个结点 h是树的高度 Q[rear]=t; //Q是以树中结点为元素的队列 while(front<=last) t=Q[front++]; //队头出列 while(t!=null) //层次遍历 if (t >firstchild) Q[++rear]=t >firstchild; //第一子女入队 t=t >nextsibling; //同层兄弟指针后移 if(front>last) //本层结束 深度加 (初始深度为 ) h++;last=rear; //last再移到指向当前层最右一个结点 //while(front<=last) //else //Height
cha138/Article/program/sjjg/201311/23727相关参考
知识大全 数据结构考研分类复习真题 第六章 答案 (五)[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[
知识大全 数据结构考研分类复习真题 第六章 答案 (五)[6]
.BiTreeCreat(ElemTypeA[]inti) //n个结点的完全二叉树存于一维数组A中本算法据此建立以二叉链表表示的完全二叉树 BiTreetree; if(i<=n)t
知识大全 数据结构考研分类复习真题 第六章 答案 (五)[4]
.[题目分析]当森林(树)以孩子兄弟表示法存储时若结点没有孩子(fch=null)则它必是叶子总的叶子结点个数是孩子子树(fch)上的叶子数和兄弟(nsib)子树上叶结点个数之和 typedef