首先第一行給出乙個正整數 n(
≤10),為樹中結點總數。樹中的結點從 0 到 n−
1 編號。隨後
n 行,每行給出乙個對應結點左右孩子的編號。如果某個孩子不存在,則在對應位置給出 "-"。編號間以 1 個空格分隔。
在一行中按規定順序輸出葉節點的編號。編號間以 1 個空格分隔,行首尾不得有多餘空格。
8
1 -- -
0 -2 7
- -- -
5 -4 6
4 1 5
先找出根結點,然後再層次遍歷找葉子即可,ac**如下:
#include#include#define max 15
using namespace std;
typedef struct bitnode
bitnode;
bitnode p[max];
int n,root,arr[max];
int build()
else
p[i].lchild = -1;
if(b != '-')
else
p[i].rchild = -1;
}for(int i = 0;i < n; i++)
if(!arr[i])
return i;
}void level()
else if(p[fx].lchild != -1 && p[fx].rchild != -1)
else if(p[fx].lchild == -1)
que[tail++] = p[fx].rchild;
else
que[tail++] = p[fx].lchild;
head++;
}}int main()
列出葉結點
對於給定的二叉樹,本題要求你按從上到下 從左到右的順序輸出其所有葉節點。輸入格式 首先第一行給出乙個正整數 n 10 為樹中結點總數。樹中的結點從 0 到 n 1 編號。隨後 n 行,每行給出乙個對應結點左右孩子的編號。如果某個孩子不存在,則在對應位置給出 編號間以 1 個空格分隔。輸出格式 在一行...
列出葉結點
對於給定的二叉樹,本題要求你按從上到下 從左到右的順序輸出其所有葉節點。輸入格式 首先第一行給出乙個正整數 n 10 為樹中結點總數。樹中的結點從 0 到 n 1 編號。隨後 n 行,每行給出乙個對應結點左右孩子的編號。如果某個孩子不存在,則在對應位置給出 編號間以 1 個空格分隔。輸出格式 在一行...
列出葉結點
問題 對於給定的二叉樹,本題要求你按從上到下 從左到右的順序輸出其所有葉節點。輸入格式 首先第一行給出乙個正整數 n 10 為樹中結點總數。樹中的結點從 0 到 n 1 編號。隨後 n 行,每行給出乙個對應結點左右孩子的編號。如果某個孩子不存在,則在對應位置給出 編號間以 1 個空格分隔。輸出格式 ...