7 7 列出葉結點 (25 分)

2021-09-02 22:28:13 字數 801 閱讀 5026

對於給定的二叉樹,本題要求你按從上到下、從左到右的順序輸出其所有葉節點。

首先第一行給出乙個正整數 n(≤10),為樹中結點總數。樹中的結點從 0 到 n−1 編號。隨後 n 行,每行給出乙個對應結點左右孩子的編號。如果某個孩子不存在,則在對應位置給出 "-"。編號間以 1 個空格分隔。

在一行中按規定順序輸出葉節點的編號。編號間以 1 個空格分隔,行首尾不得有多餘空格。

8

1 -- -

0 -2 7

- -- -

5 -4 6

4 1 5
#include#include#include#include#include#include#includeusing namespace std;

struct nodep[15];

int root[15];

vectorleaf[15];

void func(int s,int cur)

if(p[s].left!='-') func(p[s].left-'0',cur+1);

if(p[s].right!='-') func(p[s].right-'0',cur+1);

}int main()

int rt;//記錄根節點下標

for(int i=0;i} func(rt,1);//將葉節點儲存

int f=0;

for(int i=1;i<=n;i++)

} cout

}

7 14 列出葉結點 25 分

對於給定的二叉樹,本題要求你按從上到下 從左到右的順序輸出其所有葉節點。首先第一行給出乙個正整數 n 10 為樹中結點總數。樹中的結點從 0 到 n 1 編號。隨後 n 行,每行給出乙個對應結點左右孩子的編號。如果某個孩子不存在,則在對應位置給出 編號間以 1 個空格分隔。在一行中按規定順序輸出葉節...

7 3 列出葉結點 25分

對於給定的二叉樹,本題要求你按從上到下 從左到右的順序輸出其所有葉節點。首先第一行給出乙個正整數 n 10 為樹中結點總數。樹中的結點從 0 到 n 1 編號。隨後 n 行,每行給出乙個對應結點左右孩子的編號。如果某個孩子不存在,則在對應位置給出 編號間以 1 個空格分隔。在一行中按規定順序輸出葉節...

列出葉結點 (25 分)

對於給定的二叉樹,本題要求你按從上到下 從左到右的順序輸出其所有葉節點。首先第一行給出乙個正整數 n 10 為樹中結點總數。樹中的結點從 0 到 n 1 編號。隨後 n行,每行給出乙個對應結點左右孩子的編號。如果某個孩子不存在,則在對應位置給出 編號間以 1 個空格分隔。在一行中按規定順序輸出葉節點...