假设以带双亲指针的二叉链表作为-二叉树的存储结构,其结点结构的类型说明如下所示: typedef char DataType; typedef struct node{ DataType data; stru

admin2008-05-04  24

问题 假设以带双亲指针的二叉链表作为-二叉树的存储结构,其结点结构的类型说明如下所示:
   typedef char DataType;
   typedef struct node{
       DataType data;
       struct node*lchild,*rchild;  //左右孩子指针
       struct node*parent;    //指向双亲的指针
   }BinTNode;
   typedef BinTNode*BinTree;
   若px为指向非空二叉树中某个结点的指针,可借助该结构求得px所指结点在二叉树的中序序列中的后继。
1. 就后继的不同情况,简要叙述实现求后继操作的方法;

选项

答案分两种情况讨论 ①当*px的右子树不为空时,则从*px的右孩子开始,沿其左孩子往下查找,直至找到一个没有左孩子的结点为止,则该结点为*pX在中序序列中的后继; ②当*px的右子树为空时,则沿*px的双亲指针链向上查找,直至找到其左子树中包含*px的最年轻祖先,则该祖先结点为*px在中序序列中的后继。

解析
转载请注明原文地址:https://kaotiyun.com/show/sfAx777K
本试题收录于: 数据结构题库理工类分类
0

最新回复(0)