zoukankan      html  css  js  c++  java
  • 每周学习日志(二)

    学习了树的存储方法
    存储方法有:双亲表示法、孩子表示法、孩子兄弟表示法。
    双亲表示法:1、先按层序编号。2、按结点的层序编号,在数组中对应单元存放一个结点(data,parent)3、结点data部分存放树结点中存储的数据元素。4、结点parent部分存放该结点双亲结点的编号。

    存储结构

     #define MAX 100 
    typedef struct TNode 
    { DataType data; 
    int parent; 
    }TNode;
    typedef struct 
    { TNode tree[MAX]; 
    int nodenum;//结点数
     }ParentTree;
    
    孩子表示法

    孩子链表结点的定义

    typedef struct ChildNode
     { int Child; 
    struct ChildNode *next; 
    }ChildNode;
    

    顺序表结点的定义

    typedef struct 
    { DataType data;
     ChildNode *FirstChild;
     }DataNode;
    

    树的定义

    typedef struct 
    { DataNode nodes[MAX];
     int root;//根结点在线性表的位置 
    int num;//结点个数 
    }ChildTree;
    
    孩子兄弟表示法
    1、也叫左孩子-右兄弟表示法。2、链表中每个结点的两个链域分别指向该结点的最 左儿子和右邻兄弟。

    存储结构

    typedef struct CSNode 
    { DataType data; //结点信息 
    struct CSNode *FirstChild;//第一个孩子 
    struct CSNode *NextSibling;//下一个兄弟
     }CSNode, *CSTree;
    
  • 相关阅读:
    catalina_home与catalina_base
    log4j配置
    lsof
    定时任务-crontab
    access日志配置
    java常识
    mysql事务隔离级别与实现原理
    文件描述符设置
    gpio 預設值
    synchronous interrupt and asynchronous interrupt
  • 原文地址:https://www.cnblogs.com/wananouo/p/12860159.html
Copyright © 2011-2022 走看看