<>一、问题引入

* 已知一颗以二叉链表方式存储的二叉树,编写算法计算二叉树的单孩子的结点数。单孩子是指该结点只有左孩子或只有右孩子(其实就是求度为1的结点个数)
<>二、算法实现
typedef struct Node { DataType data;//数据域 struct Node *leftchild;//左子树指针 struct
Node *rightchild;//右子树指针 }BiTreeNode;
用递归实现特别简单
//计算二叉树中度为1的结点总数 int leaf_1(BiTreeNode *T) { if (T==NULL) { return 0; } if ((T
->leftchild == NULL && T->rightchild != NULL) || (T->leftchild != NULL && T->
rightchild== NULL)) { return 1 + leaf_1(T->leftchild) + leaf_1(T->rightchild); }
return leaf_1(T->leftchild) + leaf_1(T->rightchild); }

技术
©2019-2020 Toolsou All rights reserved,
MySQL触发器你所不知道的谷歌浏览器 console.log打印技巧3 4j不是合法的python表达式_3+4j不是合法的Python表达式。VHDL——JK触发器算法设计与分析(回溯)登录模块测试用例java 字符串从后向前_Java String字符串总结【linux】shell:简单的shell脚本练习(超详细)Eclipse使用教程——使用Eclipse创建第一个HelloWorld!2021年——第十二届蓝桥杯大赛软件赛国赛C/C++ 大学 C 组