已知二叉树按顺序存储结构进行存储,设计一个算法,求编号i和j的公共祖先

算法思想: 任意两个结点必存在最近的公共祖先,最坏的情况是根结点。
算法实现:

Elemtype Comm_Ancestor(SqTree T, int i , int j){
    
    
    if(T[i]!='#' && T[j] != '#'){
    
    
        while(i != j){
    
    
            if(i > j){
    
    
                i = i/2;
            }
            if(j>i){
    
    
                j = j/2;
            }
        }
        return T[i];
    } 
}

猜你喜欢

转载自blog.csdn.net/qq_43964318/article/details/109189338