示例#1
0
void CreateBinTree(BiNode *bt) //1.按照先序遍历次序递建立二叉树。
{     
	char ch; 
	scanf_s("%c",&ch);
	getchar(); 
	if (ch=='!')  
		bt=NULL; 
	else 
	{   bt=(BiNode *)malloc(sizeof(BiNode)); 
		bt->data=ch; //生成根结点 
		CreateBinTree(bt->lchild);          //构造左子树 
		CreateBinTree(bt->rchild);           //构造右子树 
	} 
} 
示例#2
0
int CreateBinTree(BinTree *Tree)
{
    char ch;
    scanf("%c",&ch);
    if(ch == '.')
        (*Tree) = NULL;
    else
    {
        if(!((*Tree) = (BinTree)malloc(sizeof(BinNode))))
            exit(OVERFLOW);
        (*Tree)->data = ch;
        CreateBinTree(&((*Tree)->lchild));
        CreateBinTree(&((*Tree)->rchild));
    }
    return (OK);
}/*CreateBiTree*/
示例#3
0
文件: main.cpp 项目: Alecs94/DSA-lab
NodeT *CreateBinTree(FILE *f)
    {
        NodeT *p;
        char *return_val;
        return_val=(char*)malloc(sizeof(char));
        fscanf(f,"%s",return_val);
        if (strcmp(return_val,"*")==0)
            return NULL;
        else
        {
            p=createNode(return_val);
            p->left=CreateBinTree(f);
            p->right=CreateBinTree(f);
        }
        return p;
    }
示例#4
0
文件: main.c 项目: Alecs94/DSA-lab
int main()
{
    FILE *f=fopen("input.txt","r");
    NodeT *root=CreateBinTree(f);
    mirror(root);
    prettyPrint(root,0);

    fclose(f);
    return 0;
}
示例#5
0
文件: main.cpp 项目: Alecs94/DSA-lab
int main()
{      FILE *f=fopen("input.txt","r");
    NodeT *root=CreateBinTree(f);
    NodeL*firstFromList=getListfromTree(root);
    traverseList(firstFromList);
    root=getTreeFromList(firstFromList);
    prettyPrint(root,0);
     fclose(f);
    return 0;

}
示例#6
0
void main()
{
    BinTree T=NULL;
    printf("BEGIN\n");

    CreateBinTree(&T);
    printf("END\n");
    printf("DEPTH\n");
    printf("%d\n",depth(T));
    printf("LEAF\n");
    printf("%d\n",leaf(T));
}
示例#7
0
void main()
{
	BiNode *bt;
	bt=(BiNode *)malloc(sizeof(BiNode)); 

	InitBinTree(bt);
    CreateBinTree(bt);
	preOrder(bt);
    printf("非递归先序遍历为:");
	//Pre(bt);
	printf("\n");
	printf("非递归中序遍历为:");
	//In(bt);
	printf("\n");
	printf("非递归后序遍历为:");
	//Post(bt);
	printf("\n");

}