1.二叉树创建的3种方法
在嵌套法创建二叉树的过程中,递归终止条件是十分重要设置的一环。节点数据是char类型的二叉树,嵌套创建时,很多人会用一个字符,比如输入流中的“ ”(空格)来设置递归结束。倘若节点数据为int类型,则稍微复杂,首先我们在输入时必须使用“空格,制表,换行”这3者之一间隔输入的数,且cin读取数据时候cin会跳过三种空格,因此有的人使用某个数比如“0, -1”设置递归终止,但是要求某个节点的数值就是递归终止判断条件所设置的值比如‘-1’呢,显然这不符合程序的完整性。基于此,本文提供了一种思路。
这里,我们总结了3种二叉树创建方法。约定,二叉树节点定义如下:
typedef struct BinaryTreeNode
{
int data;
BinaryTreeNode * leftchild;
BinaryTreeNode * rightchild;
}Node,*NodePoint;
意图构建成的二叉树如下图所示: