二叉树存储结构

二叉树存储结构

存储结构:

① 顺序存储结构

② 链式存储结构

 

顺寻存储结构

结构体

typedef int DataType ;
struct SeqBinTree{
    int MAXNUM;
    int n;
    DataType *nodelist;  
};

typedef SeqBinTree* PSeqBinTree;

 

返回下标为p 的节点的父节点的下标

int parent_seq(PSeqBinTree tree,int p){
    if(p<0||p>=tree->n)return -1;
    return (p-1)/2;
}

 

返回下标为p的节点的父节点的下标

int leftChild_seq(PSeqBinTree tree){
    if(p<0||p>tree->n) return -1;
    return (p-1)/2;
}

 

返回下标为p的节点的左子节点的下标

int leftChild_seq(PSeqBinTree tree){
    if(p<0||p>tree->n) return -1;
    return 2*p+1;
}

 

返回下标为p的节点的右子节点的下标

int leftChild_seq(PSeqBinTree tree){
    if(p<0||p>tree->n) return -1;
    return 2*p+2;
}

因上求缘,果上努力~~~~ 作者:每天卷学习,转载请注明原文链接:https://www.cnblogs.com/BlairGrowing/p/13038187.html

原文地址:https://www.cnblogs.com/BlairGrowing/p/13038187.html