zoukankan      html  css  js  c++  java
  • 二叉树的结构体表示【摘抄自严长生老师的网站】

    采用链式存储

    typedef struct BiTNode{
        TElemType data;//数据域
        struct BiTNode *lchild,*rchild;//左右孩子指针
    }BiTNode,*BiTree;
    

    若需访问父节点,可如下表示

    typedef struct BiTNode{
        TElemType data;//数据域
        struct BiTNode *lchild,*rchild;//左右孩子指针
        struct BiTNode *parent;
    }BiTNode,*BiTree;
    

    以上面左图为例,用上述结构体存储,代码如下

    #include <stdio.h>
    #include <stdlib.h>
    #define TElemType int
    typedef struct BiTNode{
        TElemType data;//数据域
        struct BiTNode *lchild,*rchild;//左右孩子指针
    }BiTNode,*BiTree;
    void CreateBiTree(BiTree *T){
        *T=(BiTNode*)malloc(sizeof(BiTNode));
        (*T)->data=1;
        (*T)->lchild=(BiTNode*)malloc(sizeof(BiTNode));
        (*T)->rchild=NULL;
        (*T)->lchild->data=2;            
        (*T)->lchild->lchild=(BiTNode*)malloc(sizeof(BiTNode));
        (*T)->lchild->rchild=NULL;
        (*T)->lchild->lchild->data=3;
        (*T)->lchild->lchild->lchild=NULL;
        (*T)->lchild->lchild->rchild=NULL;
    }
    int main() {
        BiTree Tree;
        CreateBiTree(&Tree);
        printf("%d",Tree->lchild->lchild->data);
        return 0;
    }
    

     

  • 相关阅读:
    SQL Server如何固定执行计划
    领导修炼
    content management system
    npm和bower
    web开发workflow
    偏执狂
    website project team member 角色及开发过程概念图
    website architecture
    王道霸道
    design pattern及其使用
  • 原文地址:https://www.cnblogs.com/wzyuan/p/9943627.html
Copyright © 2011-2022 走看看