设树采用孩子兄弟表示法存放,用类C语言设计算法计算树的高度.
来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/26 20:06:18
设树采用孩子兄弟表示法存放,用类C语言设计算法计算树的高度.
不要复制,
不要复制,
采用递归求解,先求左子树的高度和右子树的高度,然后整棵树的高度就是两颗子树高度的最大值+1.假定叶子节点高度为0.代码如下:
struct node {
int val;
struct node* left;
struct node* right;
};
int height(struct node* root)
{
int h, lh, rh;
if ( root == NULL)
return -1;//这里返回-1表示叶子节点的高度为0,若规定叶子节点的高度为1,这里返回0即可
lh = height(root->left);
rh = height(root->right);
if (lh > rh)
h = lh + 1;
else
h = rh + 1;
return h;
}
再问: 能写个程序吗?
再答: 代码我上面不是已经写了吗,你可以把这个函数添加到自己的程序里面去啊
struct node {
int val;
struct node* left;
struct node* right;
};
int height(struct node* root)
{
int h, lh, rh;
if ( root == NULL)
return -1;//这里返回-1表示叶子节点的高度为0,若规定叶子节点的高度为1,这里返回0即可
lh = height(root->left);
rh = height(root->right);
if (lh > rh)
h = lh + 1;
else
h = rh + 1;
return h;
}
再问: 能写个程序吗?
再答: 代码我上面不是已经写了吗,你可以把这个函数添加到自己的程序里面去啊
设树采用孩子兄弟表示法存放,用类C语言设计算法计算树的高度.
一棵采用孩子兄弟表示法存储的树,设计算法,按层次依次输出该树的所有结点
设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分.(利用C语言)
非递归算法,以孩子兄弟为存储结构的计算树的深度 该怎么理解
设计要求 (1)先用C语言描述正确的计算最大公约数的算法 ,保证算法的正确性 (2)然后设计一个该算法的
C语言中 什么是算法 算法的表示有哪几种方式
java 设计算法,计算用后缀表示法表示的算术表达式的值.
数据结构算法设计题1.已知一颗二叉树采用二叉链表存放,写一算法,要求统计出二叉树中叶子结点个数并输出(输出无顺序要求)1
4. 题目4:用硬件设计一个最大公约数计算的算法电路 4.1 设计要求 (1)先用C语言描述正确的计算最大公约
帮忙设计一个C语言算法
c语言基础知识的二叉树的遍历算法
在树的孩子兄弟表示法中,判断一个结点是否为数的叶子结点的条件是什么?