求二叉树宽度
来源:互联网 发布:刘项原来不读书 知乎 编辑:程序博客网 时间:2024/04/30 18:35
#include<stdio.h>#include<stdlib.h>#define NULL 0#define MAXSIZE 100typedef struct BTNode{ struct BTNode *lchild,*rchild; int data;}BTNode,*btnode;typedef struct{ btnode p; int lno;}St;void createBtree(btnode &T){ int t; scanf("%d",&t); if(t==0) T=NULL; else { T=(btnode)malloc(sizeof(BTNode)); T->data=t; createBtree(T->lchild); createBtree(T->rchild); }}int maxWidth(btnode &b){ St que[MAXSIZE]; int front,rear,n; int Lno,i,j,max; btnode q; front=rear=0; if(b) { ++rear; que[rear].p=b; que[rear].lno=1; while(front!=rear) { ++front; q=que[front].p; Lno=que[front].lno; if(q->lchild) { ++rear; que[rear].p=q->lchild; que[rear].lno=Lno+1; } if(q->rchild) { ++rear; que[rear].p=q->rchild; que[rear].lno=Lno+1; } } max=0; for(i=1;i<=Lno;i++) { n=0; for(j=1;j<=rear;j++) if(que[j].lno==i) ++n; if(n>max) max=n; } return max; } else return 0;}void main(){ btnode T; int w; createBtree(T); w=maxWidth(T); printf("width=%d\n",w);}
0 0
- 求二叉树宽度
- 二叉树 求宽度
- 求二叉树宽度
- 求二叉树宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树高度、宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 实验四、3求二叉树宽度
- 求二叉树宽度的递归算法
- 求二叉树的深度和宽度
- 求二叉树的深度和宽度
- 求二叉树的高度和宽度
- Android五种常用数据的存储方式
- 来自一位女程序员8年的总结。
- python常用模块
- 7、Python数据结构
- HTML开发学习笔记(CSS浏览器兼容性问题解决)
- 求二叉树宽度
- Linux Bash Shell
- [从头学数学] 第140节 勾股定理
- 更新Oracle的Date字段
- Week 10:Large Scale Machine Learning课后习题解答
- hdu1022 Train Problem I 栈的应用
- android studio快捷键
- 在fragment 传递数据的时候报:Parcel: unable to marshal value
- Linux下SVN服务器的搭建