题目:编程求以孩子兄弟表示法存储的森林的叶子结点数

分析:我们可以试想一个节点它如果有左孩子,那么根据孩子兄弟表示法的规则,那它一定不是叶节点,相反如果没有左孩子,那么
            它一定是叶子结点,其右孩子即它的兄弟,同样应该这样去判断。

代码如下:

typedef struct node {char data;node *fch, *nsib;
}Tree;
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>Tree *create(Tree *T) {//先序创建一颗二叉树char data;printf("请输入当前节点值:data=");scanf("%c", &data);getchar();if (data != '#') {T = (Tree *)malloc(sizeof(Tree));T->data = data;T->fch = NULL;T->nsib = NULL;T->fch = create(T->fch);T->nsib = create(T->nsib);}return T;
}
int frostLeaf(Tree *T) {if (!T) {//空则返回0,也是递归的出口return 0;}else {if (!T->fch) {//没有左孩子,该节点为叶子结点return 1 + frostLeaf(T->nsib);}else {//有左孩子,该节点不

编程求以孩子兄弟表示法存储的森林的叶子结点数☆相关推荐

  1. 【数据结构】求以孩子兄弟表示法存储的森林的叶子结点数,树高

    1.求叶子结点数 T的第一个孩子存在T->firstChild里,所以如果T连第一个孩子都没有,那肯定为叶子结点,也就是说T->firstChild==NULL. 所以说,以孩子兄弟表示法 ...

  2. 如何用孩子兄弟表示法存储树c语言,C语言,数据结构,树的孩子兄弟表示法,程序一切正常,但是有个问题不太懂了,园豆不多,帮帮忙,求助一下....

    我的困惑就是在creatTree函数中,参数是(LTNode &T),也就是说是struct node**型指针,但是在递归中,也就是在creatTree(T->firstchild)中 ...

  3. 以孩子兄弟链表为存储结构,请设计递归算法求树的高度

    题目:以孩子兄弟链表为存储结构,请设计递归算法求树的高度 分析:如果只有根节点,那么高度为1,如果有左孩子,那么高度由左孩子的左子树和右子树决定,取其大者. 代码如下: typedef struct ...

  4. 【数据结构】(森林)以孩子兄弟链表为存储结构,请设计递归算法求树的深度

    以孩子兄弟链表为存储结构,请设计递归算法求树的深度 算法思想:求树的深度采用递归的思想就是求每一个兄弟的深度最大值 int Height(CSTree bt){int hc,hs;if(bt==NUL ...

  5. 树的概念及存储结构(双亲表示法,孩子表示法,孩子兄弟表示法)

    文章目录 一. 树的概念 二. 树的存储结构 (一). 双亲表示法 (二). 孩子表示法 1. 定长结点链表存储结构 2. 孩子链表存储结构 (三). 孩子兄弟表示法 一. 树的概念 树(Tree)是 ...

  6. c语言孩子兄弟法存储一棵树,树的孩子兄弟表示法

    前面讲解了存储普通树的双亲表示法和孩子表示法,本节来讲解最后一种常用方法--孩子兄弟表示法. 图 1 普通树示意图 树结构中,位于同一层的节点之间互为兄弟节点.例如,图 1 的普通树中,节点 A.B ...

  7. 双亲表示法、孩子表示法、孩子兄弟表示法(二叉树表示法),森林和二叉树的转换

    树的存储结构 一.双亲表示法 二.孩子表示法(孩子链表) 三.孩子兄弟表示法(二叉树表示法.二叉链表表示法) 四.森林(树)和二叉树的转换 一.双亲表示法 实现:定义数组结构存放树的结点,每个结点含两 ...

  8. 孩子表示法 双亲表示法 孩子兄弟表示法

    今天复习书的存储结构中的表示法 分别是   双亲表示法  孩子表示法 孩子兄弟表示法 如果现在是这种数据关系; 双亲表示法: 孩子表示法: 孩子兄弟表示法: 感觉最重要的逻辑关系一看图就知道了,关键在 ...

  9. 采用孩子兄弟表示法建立一棵树

    采用孩子兄弟表示法建立一棵树. 说明:因为孩子兄弟表示法的特点,不好用递归创建,所以利用队列来存放结构体. 注意:当指针作为函数参数时,不能改变实参指针的指向,只能改变实参指针所指向的数据 #incl ...

最新文章

  1. 【IBM Tivoli Identity Manager 学习文档】3 系统部署
  2. 【NLP】首个任务型对话系统中生成模块资源库Awesome-TOD-NLG-Survey开源!
  3. LeetCode 250. Count Univalue Subtrees
  4. linux基础--Bash逻辑控制语句
  5. python中if __name__ == ‘__main__‘:的简单理解
  6. SpringBoot非官方教程 | 第三篇:SpringBoot用JdbcTemplates访问Mysql
  7. 纯前端实现人脸识别-提取-合成
  8. NSRange类详解
  9. ELK 日志管理系统,初次尝试记录
  10. 取文件操作fopen(file open)
  11. RT-Thread邮箱
  12. unity怎么导入系统的树_Unity5.0_树_软件教程_资源库
  13. crypto安装_Mac安装Golang和vscode
  14. UltraISO制作U盘启动盘安装Windows系统攻略
  15. MySQL数据库基础详细教程
  16. html怎么制作图文混排页面,CSS 网页图文混排的10个技巧
  17. notes for lxf(一)
  18. Java落寞了?7 月编程语言最新排行榜
  19. 史上最简单直接截图识别的latex公式编辑器
  20. 《天女散花》唱段 · 风吹荷叶煞

热门文章

  1. 草地排水-网络流dinic
  2. 小程序复制指定内容到剪贴板
  3. xml转化为Dictionary
  4. require js
  5. 选课 topsort
  6. 搜索提示的实现(仿百度):附源码和在线demo
  7. 支持向量机中到底什么是支持向量
  8. 7-5 考试座位号 (15 分)
  9. 4020-基于链地址法的散列表的插入(C++,附思路以及头插法,尾插法两种代码)
  10. python txt文件排序,使用Python在.txt文件中按數值(降序)排序高分列表