早教吧作业答案频道 -->其他-->
假定用两个一维数组L[n+1]和R[n+1]作为有n个结点的二叉树的存储结构,L[i]和R[i]分别指示节点i(i=1,2,.,n)的左孩子和右孩子,0表示空.试写一个算法判断结点u是否为结点v的子孙.
题目详情
假定用两个一维数组L[n+1]和R[n+1]作为有n个结点的二叉树的存储结构,
L[i]和R[i]分别指示节点i(i=1,2,.,n)的左孩子和右孩子,0表示空.试写一个算法判断结点u是否为结点v的子孙.
L[i]和R[i]分别指示节点i(i=1,2,.,n)的左孩子和右孩子,0表示空.试写一个算法判断结点u是否为结点v的子孙.
▼优质解答
答案和解析
int isGrandChild(int u,int v) //判断u是否为v的子孙
{
if (L[v] == u || R[v] == u) return 1; //1表示是,0表示否
if (L[v] == 0 && R[v] == 0) return 0;
return isGrandChild(u,L[v]) || isGrandChild(u,R[v]); //如果u是L[v]或者R[v]的子孙,那么u也是v的子孙
}
{
if (L[v] == u || R[v] == u) return 1; //1表示是,0表示否
if (L[v] == 0 && R[v] == 0) return 0;
return isGrandChild(u,L[v]) || isGrandChild(u,R[v]); //如果u是L[v]或者R[v]的子孙,那么u也是v的子孙
}
看了 假定用两个一维数组L[n+1...的网友还看了以下:
猴子推车关于汉语拼音的问题在孩子的暑假作业上看到一题问猴子推车是拼音什么字母啊知道的帮我解决这个问 2020-05-14 …
一条数学条件概率题:抛掷红黄两颗骰子,当红色骰子的点数为4或6时,两颗骰子的点数之积大于20的概率 2020-05-16 …
抛掷红蓝两颗骰子,设事件A为蓝色骰子的点数为3或6,事件B为两颗骰子的点数之和大于8(1)求P(A 2020-05-16 …
二填空题:(1)过点(2,-3)且与直线2x+y-3=0垂直的直线方程是.(2)随机掷一骰子,则所 2020-05-16 …
方方正正一大厅,共有椅子八把整.每面墙边放三把,应该怎么放才行?这是我儿子的暑假作业,请网友们帮助 2020-05-23 …
指出下面句子的通假字,并写出本字。(3分)(1)臧亡匿死通(2)子无扑矣通(3)阙一不可通 2020-06-10 …
掷两颗骰子,求出现下列事件的概率1.两颗骰子的点数之和等于22.两颗骰子的点数之和等于33.两颗骰 2020-06-13 …
一条数学条件概率题:抛掷红黄两颗骰子,当红色骰子的点数为4或6时,两颗骰子的点数之积大于20的概率 2020-06-18 …
求解一道规律题现在小学三年级的暑假作业真难啊,昨天看到侄子的暑假作业有一题什么逻辑规律题,哥想了半 2020-06-20 …
求《五猖会》中对其中3个句子的点评!求鲁迅的《五猖会》中的其中三个句子做点评句子,点评在50字左右 2020-06-22 …