返回信息流设计一个递归算法,求在给定二叉树的结点总数N的情况下,二叉树可能拥有的形状数M。
请看如下说明和要求:满足要求的任何一棵二叉树都是高度为N的满二叉树从根结点开始的子树。
将这棵满二叉树的结点按照从上至下、从左至右的顺序进行编号,根结点的编号为1,则可以按层次输出任何结点总数为N的二叉树的所有结点编号。
例如当N=3时,输出结果为:
1: 1, 2, 3
2: 1, 2, 4
3: 1, 2, 5
4: 1, 3, 6
5: 1, 3, 7
tree_count is 5 when N is 3
递归函数的原型是:void arrange(int arr[],int idx,int N,int &tree_count);其中arr是存放编号序列的数组,idx是当前需要计算的数组元素的下标,N是结点总数也是数组长度,tree_count记录二叉树的数目。
求递归函数设计思路
这是一条镜像帖。来源:北邮人论坛 / acm-icpc / #100420同步于 2022/4/23
ACM_ICPC机器人发帖
数据结构相关求助
Starsky
2022/4/23镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。