首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
一棵二叉树的繁茂度定义为R层结点数的最大值与树的高度的乘积。编写一个算法求二叉树的繁茂度。
一棵二叉树的繁茂度定义为R层结点数的最大值与树的高度的乘积。编写一个算法求二叉树的繁茂度。
admin
2012-06-26
59
问题
一棵二叉树的繁茂度定义为R层结点数的最大值与树的高度的乘积。编写一个算法求二叉树的繁茂度。
选项
答案
typedef struct BiTNode{ TElemType data; struct BiTNode*lchild;*rchild; //左、右孩子指针 }BiTNode,*BiTree; typedef struct{ BiTNode node; int layer; }BTNRecord; //包含结点所在层次的记录类型 int FanMao(Bitree T){ int count[MAX]; //count数组存放每一层的结点数 InitQueue(Q); //Q的元素为BTNRecord类型 EnQueue(Q,{T,0}); while(!QueueEmpty(Q)){ //利用层序遍历来统计各层的结点数 DeQueue(Q,r); count[r.layer]++: if(r.node一>ichild) EnQueue(Q,{r.node一>ichild,r.layer+l}); if(r.node一>rchild) EnQueue(Q,{r.node一>rchild,r.layer+1)); } h=r.layer; //最后一个队列元素所在层就是树的高度 for(maxn=count[0],i=1;count[i];i++) if(count[i]>maxn) maxn=count[i]; //求层最大结点数 return h*maxn; }
解析
要用层次遍历以及队列来处理,可增设一个宽度计数器,在统计完每一层的结点个数之后,再从计数器中挑出最大值。
转载请注明原文地址:https://kaotiyun.com/show/mfxi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
维也纳会议争论的焦点问题是()。
()属于克利斯提尼改革的内容。
抗战以来文艺战线上思想斗争中最重要的问题是()。
简述辛亥革命前革命派和改良派论战的主要内容,并谈谈你对这场论战的基本看法。(南京大学2002年综合卷真题)
试述中国共产党诞生的历史条件和意义。
试论述清朝前期是如何巩固统一的多民族国家的?
论述1919—1945年美英法德日五国外交政策的变化及其原因
毛泽东从事了大量理论研究工作,系统阐述了新民主主义的理论,下列选项中,不属于这一范围的是()
以下()协议完成了从网卡到IP地址的映射。
随机试题
以下灭火剂中,()不具有化学抑制的作用。
在感染性休克的治疗中,哪项是最基本的
若该患者同时出现下列哪项应疑是嗜铬细胞瘤如为老年患者,伴剧烈呛咳则应考虑
A.咪康唑B.甲硝唑C.庆大霉素D.聚甲酚磺醛E.曲古霉素滴虫性阴道炎宜选用()。
材料和设备供应方的项目管理工作主要在建设工程项目的( )进行。
课堂里某种占优势的态度与情感的综合表现被称为()。
2018年5月2日,习近平总书记在北京大学师生座谈会上的讲话中指出,评价教师队伍素质的第一标准应该是()。
关于宇宙起源的科学发现——1998年英译汉及详解Theywere,byfar,thelargestandmostdistantobjectsthatscientistshadeverdetected:astripof
Inthefuturetradethekeydevelopmenttowatchistherelationshipbetweentheindustrializedandthedevelopingnations.The【
A、Robotswilltakeplaceofhumanworkers.B、Millionsofjobswilldisappear.C、Thefifthindustrialrevolutionwillhappen.D、A
最新回复
(
0
)