• 中序线索化二叉树


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

    //树的线索化中序
    #include<iostream>
    using namespace std;
    
    typedef struct BiThrNode{
        char data;
        struct BiThrNode *lchild,*rchlild;
        int LTag,RTag;
    }BiThrNode,*BiThrTree;
    
    BiThrNode *pre = new BiThrNode;
    
    void CreateBiTree(BiThrNode &T){
        char ch;
        cin>>ch;
        if(ch=='#') T=NULL;
        else{
            T=new BiThrNode;
            T->data=ch;
            CreateBiTree(T->lchild);
            CreateBiTree(T->rchlild);
        }
    }
    
    void InThreading(BiThrTree p){
        if(p){
            InThreading(p->lchild);
            if(!p->lchild){
                p->LTag=1;
                p->lchild=pre;
            }else{
                p->LTag;
            }
    
            if(!pre->rchlild){
                pre->RTag=1;
                pre->rchlild=p;
            }else{
                pre->RTag=0;
            }
            pre=p;
            InThreading(p->rchlild);
        }
    }
    
    void main(){
        pre->RTag=1;
        pre->rchlild=NULL;
        BiThrTree tree;
        cout<<"please input:
    ";
        CreateBiTree(tree);
        InThreading(tree);
        cout<<"finish!
    ";
    }
    
  • 相关阅读:
    CF321D
    oracle 第25章 闪回技术
    oracle 第24章 Netbackup 备份恢复
    oracle 第23章 RMAN 备份恢复
    oracle 第22章 EXP/IMP/EXPDP/IMPDP 备份恢复
    oracle 第21章 dblink
    oracle 第20章 序列号和同义词
    oracle 第19章 视图
    oracle 第18章 索引
    oracle 第17章 表
  • 原文地址:https://www.cnblogs.com/ygjzs/p/11874604.html
Copyright © 2020-2023  润新知