二叉树建立,遍历,搜索,中序线索化

本文详细介绍了二叉树的基本操作,包括如何建立二叉树,如何进行前序、中序和后序遍历,以及如何实现中序线索化的二叉树,以优化中序遍历的过程。通过示例和图解,读者可以深入理解这些概念和技术。
摘要由CSDN通过智能技术生成
#include <stdio.h>
#include<stdlib.h>
#include <conio.h>
#include <string.h>
typedef char DataType;
typedef struct node
{
    DataType data;                   // 数据域
    int ltag, rtag;                 //  线索标记
    struct  node *lchild, *rchild;   // 左,右孩子
}BiTnode;
typedef BiTnode * BinTree;


/*
// 创建二叉树  参数接收为数组
void CreateBiTree(BinTree *T,char *&s,int &i)
{
    char ch = s[i];
    if (ch == '#')
    {
        *T = NULL;
    
    }
    else
    {
        *T = (BiTnode *)malloc(sizeof(BiTnode));
        (*T)->data = ch;
      
        i++;
        printf(" 字符%c\n",ch);
        CreateBiTree(&(*T)->lchild,s,i);        //建立左子树
        i++;
        CreateBiTree(&(*T)->rchild,s,i);        //建立右子数  
    }
}
*/

// 创建二叉树  参数接收为数组
void CreateBiTree(BinTree *T, char *&s)
{
    char ch = *s;
    if (ch == '#')
    {
        *T = NUL
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值