以二叉链表为存储结构,分别写出求二叉树结点总数及叶子总数的算法。

欢迎免费使用小程序搜题/刷题/查看解析,提升学历,成考自考报名,论文代写、论文查重请加客服微信skr-web

以二叉链表为存储结构,分别写出求二叉树结点总数及叶子总数的算法。

(1)求结点总数的递归定义为: 若为空树,结点总数为0。 若只有根结点,则结点总数为1。 否则,结点总数一根结点的左子树结点总数+根结点的右子树结点总数+1。 (2)求叶子总数的递归定义为: 若为空树,叶子总数为0。 若只有根结点,则叶子总数为1。 否则,叶子总数=根结点的左子树叶子总数+根结点的右子树叶子总数。 typedef char DataType; //定义DataType类型 typedef struct node{ DataType data; struct node*lchild,*rchild; //左右孩子子树 }BinTNode;//结点类型 typedef BinTNode*BinTree; //二叉树类型 int Node(BinTree T) { //算结点数 if(T) if((T一>lchild==NULL)&&(T一>rchild==NULL)) return 1; else return Node(T—>lchild)+Node(T一>rchild)+1; else return 0; } int Leaf(BinTree T) //算叶子数 if(T) if(T一>lchild==NULL)&&(T一>rchild==NULL) return 1; else return Leaf(T一>lchild)+Leaf(T一>rchild); else return 0; }

访客
邮箱
网址

通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作


  • 自动写文案
  • 自动写小说
  • 马上扫码让Ai帮你完成工作
通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作

  • 自动写论文
  • 自动写软件
  • 我不是人,但是我比人更聪明,我是强大的Ai
Top