在二叉樹中找到乙個節點的後繼節點

2021-10-23 18:23:56 字數 1232 閱讀 1014

在二叉樹中找到乙個節點的後繼節點

二叉樹中乙個節點的後繼節點指的是,二叉樹的中序遍歷的序列中的下乙個節點。

輸入描述:

第一行輸入兩個整數 n 和 root,n 表示二叉樹的總節點個數,root 表示二叉樹的根節點。

以下 n 行每行四個整數 fa,lch,rch,表示 fa 的左兒子為 lch,右兒子為 rch。(如果 lch 為 0 則表示 fa 沒有左兒子,rch同理)

最後一行輸入要詢問的節點 node。

輸出描述:

輸出乙個整數表示答案。(如果 node 是最後乙個節點,則輸出 0 )

示例1輸入

10 6

6 3 9

3 1 4

1 0 2

2 0 0

4 0 5

5 0 0

9 8 10

10 0 0

8 7 0

7 0 0

10

輸出
0
備註:

1 ≤n

≤5∗1

05

1 \leq n \leq 5*10^5

1≤n≤5∗

1051≤f

a,lc

h,rc

h,ro

ot,n

ode≤

n1 \leq fa,lch,rch,root,node \leq n

1≤fa,l

ch,r

ch,r

oot,

node

≤n題解:

模擬,分情況討論,假設待查詢節點為 node :

**:

#include

using

namespace std;

const

int n =

500010

;struct bst bst[n]

;int n, rt;

int fa, lch, rch;

int node;

intleft_most

(int root)

intsolve()

intmain

(void

)scanf

("%d"

,&node)

;printf

("%d\n"

,solve()

);return0;

}

在二叉樹中找到乙個節點的後繼節點

在二叉樹中找到乙個節點的後繼節點 現在有一種新的二叉樹節點型別如下 public class node 該結構比普通二叉樹節點結構多了乙個指向父節點的 parent 指標。假設有一棵 node 型別的節點組 成的二叉樹,樹中每個節點的 parent 指標都正確地指向自己的父節點,頭節點的 paren...

在二叉樹中找到乙個節點的後繼節點

題目 現在有一種新的二叉樹節點型別如下 public class node 該結構比普通二叉樹節點結構多了乙個指向父節點的parent指標。假 設有一 棵node型別的節點組成的二叉樹,樹中每個節點的parent指標 都正確地指向 自己的父節點,頭節點的parent指向null。只給乙個在 二叉樹中...

在二叉樹中找到乙個節點的後繼節點

題目 現在有一種新的二叉樹節點型別如下 public class node 該結構比普通二叉樹節點結構多了乙個指向父節點的parent指標。假 設有一 棵node型別的節點組成的二叉樹,樹中每個節點的parent指標 都正確地指向 自己的父節點,頭節點的parent指向null。只給乙個在 二叉樹中...