下面是我写的C++代码,测试已通过。
核心思想:将二叉树的节点按层次push进队列,再进行判断。
头文件要用到下面两个:
#include
#include
节点的定义如下:
class Node{
public:
char data;
Node *lchild;
Node *rchild;
};
判定一颗二叉树是否为完全二叉树的函数在下面的图片中:
是正确的。。。晕~~~~
方法是用多对二叉树进行广度搜索,搜索过程中计算每层不为空的连续节点个数,例如在第lev层,节点个数必须为(1<