zoukankan      html  css  js  c++  java
  • 复制树

    可能编译时会有些语法小错误(比如分号,->,等),很容易就自己纠正了哦,思路绝对是完全正确的,所以用的话就自己试着改改吧,直接复制粘贴,就正确,岂不是太没写代码体验了,自己改改才印象更加深刻的呢()~~~~;

    #include<iostream>
    using namespace std;
    
    typedef struct BiNode{
        char data;
        struct BiNode *lchild,*rchild;
    }BiTNode,*BiTree;
    
    typedef struct StackNode{
        BiTNode data;
        struct StackNode *next;
    }
    
    void CreateBiTree(BiTree &T){
        char ch;
        cin>>ch;
        if(ch=='#') T=NULL;
        else{
            T=new BiTNode;
            T->data=ch;
            CreateBiTree(T->lchild);
            CreateBiTree(T->rchild);
        }
    }
    
    void InitStack(LinkStack &S)
    {
    	//构造一个空栈S,栈顶指针置空
    	S=NULL;
    }
    
    bool StackEmpty(LinkStack S)
    {
    	if(!S)
    		return true;
    	return false;
    }
    
    void Push(LinkStack &S,BiTree e)
    {
    	//在栈顶插入元素*e
    	StackNode *p=new StackNode;
    	p->data=*e;
    	p->next=S;
    	S=p;
    }
    
    void Pop(LinkStack &S,BiTree e)
    {
    	if(S!=NULL)//原书上写的是if(S==NULL)return ERROR;
    	{	
    		*e=S->data;
    		StackNode *p=S;
    		S=S->next;
    		delete p;
    	}
    } 
    
    void Copy(BiTree T,BiTree &newT){
        if(T==NULL){
            newT=NULL;
            return;
        }else{
            newT=new BiTNode;
            newT->data=T->data;
            Copy(t->lchild,newT->lchild);
            Copy(t->rchild,newT->rchild);
        }
    }
    
    void InOrderTraverse(BiTree T)
    {  
    	//中序遍历二叉树T的递归算法
    	if(T){
    		InOrderTraverse(T->lchild);
    		cout << T->data;
    		InOrderTraverse(T->rchild);
    	}
    }
    
    void main()
    {
    	BiTree tree,new_tree;
    	cout<<"请输入建立二叉树的序列:
    ";
    	CreateBiTree(tree);
    	Copy(tree,new_tree);
    	cout<<"复制得到的新树的中序序列:
    ";
    	InOrderTraverse(new_tree);
    	cout<<endl;
    }
    
  • 相关阅读:
    FICOON
    Mezzanine
    BIOS
    基于ftp的自动传输脚本
    主机存活检测、端口检测
    基于ssh的服务器基础信息搜集
    Spring Boot aop使用指南
    Java动态代理
    Spring中的声明式事务管理
    Spring Boot注解使用指南
  • 原文地址:https://www.cnblogs.com/ygjzs/p/11874582.html
Copyright © 2011-2022 走看看