二叉树的递归思想,值得好好琢磨一番。
/*
数的直观表达图:1.倒悬树;2.嵌套集合;3.广义表;二叉树的编号规则:从上到下,由左到右
满二叉树(结点的度是0或者2)是完全二叉树的特殊情况。
二叉树可以用数组来表示,不足的地方用空代替,但用的少
二叉树的三叉链表结点也用得少,一个结点:Lchild data parent Rchild,其中parent指针向上指
二叉树链表结点: Lchild data Rchild,最底下的结点的左右都是NULL
二叉搜索树,又名二叉排序树(递归插入)
*/
#include <iostream>
typedef int DataType;
struct Node
{
DataType data;
Node *left;//指向左孩子(左子树)结点
Node *right;//指向右孩子结点
}
Node* createNode(DataType x);//创建一个结点
void insert(Node **root,Node *pn);//插入一个结点()
void preTrave(Node *root);//先(根)序遍历,默认从左到右,LDR
void midTrave(Node *root);//中序遍历
void postTrave(Node *root);//后序遍历
Node* createNode(Data