2018-5 设二叉树T,用二叉链表存储,元素值为整数且互不相同。编写非递归,对给定的2个整数,若2个都不是T的元素,输出-2,若有一个不是,输出-1,若2个都是T的元素,输出两者所在的层数的间隔数。
算法思想:
①将p指针与x,y比较,若相等,则level1/2=level
②若有一个不等(level1/2=-1),输出-1
③若两个都不等,输出-2
//算法思想:①将p指针与x,y比较,若相等,则level1/2=level
// ②若有一个不等(level1/2=-1),输出-1
// ③若两个都不等,输出-2
typedef struct BTNode{
struct BTNode *lchild;
struct BTNode *rchild;
}BTNode, *BiTree;
int function(BiTree T,int x,int y){
if(!T)
return -2;
int level=0,level1=-1,level2=-1;
int front=-1,rear=-1,last=0;
BiTree Q[MAXSIZE