樹的遍歷
題目描述:給定一棵二叉樹的後序遍歷和中序遍歷,請你輸出其層序遍歷的序列。這裡假設鍵值都是互不相等的正整數。
**如下:
#include
using
namespace std;
#define sf scanf
#define pf printf
#define ll long long
#define endl '\n'
#define pb push_back
#define sz size
#define inf 0x3f3f3f3f
const
int n =40;
int a[n]
, b[n]
;struct node
;queue> que;
vector<
int> ans;
void
slove
(node*
&root,
int l1,
int r1,
int l2,
int r2)
}slove
(root-
>lc, l1, l1 + pos - l2 -
1, l2, pos -1)
;slove
(root-
>rc, r1 - r2 + pos, r1 -
1, pos +
1, r2);}
}void
print
(node*
&root)}}
intmain()
else
}return0;
}
根據後序和中序遍歷輸出先序遍歷
本題要求根據給定的一棵二叉樹的後序遍歷和中序遍歷結果,輸出該樹的先序遍歷結果。輸入格式 第一行給出正整數nn le 30 30 是樹中結點的個數。隨後兩行,每行給出nn個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。輸出格式 在一行中輸出preorder 以...
根據後序和中序遍歷輸出先序遍歷
本題要求根據給定的一棵二叉樹的後序遍歷和中序遍歷結果,輸出該樹的先序遍歷結果。第一行給出正整數n 30 是樹中結點的個數。隨後兩行,每行給出n個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。在一行中輸出preorder 以及該樹的先序遍歷結果。數字間有1個空...
根據後序和中序遍歷輸出先序遍歷
n 是樹中結點的個數。隨後兩行,每行給出 n個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。7 2 3 1 5 7 6 4 1 2 3 4 5 6 7preorder 4 1 3 2 6 5 7 思路 一.根據後序遍歷和中序遍歷建樹 1.二叉鍊錶結構的定義 ...