数据结构_求二叉树的宽度_C语言源代码
来源:互联网 发布:qq看不见对方网络状态 编辑:程序博客网 时间:2024/05/22 00:49
typedef struct
{
BTNode *p;
int line;
}PL;
const int M=50;
int BTreeWidth(BTNode *T)
{
BTNode *s;
int LNO;
PL Q[M];
int front=0,rear=0;
int i,j;
int max=0,num;
if(NULL == T) return 0;
else
{
Q[rear].p=T;
Q[rear].line=1;
rear=(rear+1)%M;
while(rear !=front)
{
s = Q[front].p;
LNO= Q[front].line;
front=(front+1)%M;
if(s->lchild!=NULL)
{
Q[rear].p = s->lchild;
Q[rear].line =LNO + 1;
rear =(rear +1)%M;
}
if(s->rchild!=NULL)
{
Q[rear].p = s->rchild;
Q[rear].line =LNO + 1;
rear =(rear +1)%M;
}
}
for(i=1;i<=LNO;++i)
{
num=0;
for(j=1;j<=rear;++j)
{
if(Q[j].line==i) ++num;
}
if(max<num)
max=num;
}
return max;
}
}
0 0
- 数据结构_求二叉树的宽度_C语言源代码
- 数据结构_求二叉树的宽度_C语言源代码(待完善)
- 数据结构_求二叉树的高度以及层次遍历二叉树算法_C语言源代码
- 数据结构_查找二叉树中值为key的节点,并将指针指向该节点_C语言源代码
- 数据结构_单链表的插入与删除_C语言源代码
- 数据结构_多项式_C语言源代码
- 数据结构_二叉树的先序建立与先序,中序,后序(递归)遍历方式_C语言源代码
- 求C++数据结构二叉树的宽度
- 数据结构_循环队列相关操作_C语言源代码
- 数据结构_带有结点的单链表相关操作_C语言源代码
- 数据结构_顺序栈的建立及相关操作_C语言源代码
- 数据结构_链栈的建立与相关操作_C语言源代码
- 数据结构_树_二叉树的线索化_C++实现
- [数据结构]求二叉树的深度与宽度
- 数据结构_树_二叉树的建立、遍历、复制与移除_二叉链表存储_C++实现
- 求二叉树的宽度
- 求二叉树的宽度
- 求二叉树的宽度
- 二叉树的建立
- 啥? ++[[]][+[]]+[+[]] = 10?
- Android 嵌套布局导致的Exception: java.lang.ClassCastException
- Linux查看CPU和内存使用情况
- 黑马程序员-Foundation框架
- 数据结构_求二叉树的宽度_C语言源代码
- hkhj
- poj 2607 Fire Station
- MATLAB画图常用调整代码
- Java框架概述
- 三闾大夫接啊拉萨的风加拉大事掘坟
- Core Animation链接专题
- hdu 1232 畅通工程(数据结构:并查集)
- 学习杂记