/*
不管是左右子樹還是整棵樹,先序遍歷的第乙個元素就是根節點,然後從中序遍歷中找到根節點在中序遍歷的位置,並且記錄左子樹元素的個數。
先輸出左子樹,再輸出右子樹。最後輸出根節點
*/#includeusing namespace std;
string pri,mid;
void print(int l1,int r1,int l2,int r2)
char temp = pri[l1];
int index = l2;
while(index <= r2&&temp != mid[index])
print(l1+1,l1+index-l2,l2,index-1);
print(l1+index-l2+1,r1,index+1,r2);
printf("%c",pri[l1]);
}int main()
(後序 中序建樹)根據後序和中序遍歷輸出先序遍歷
本題要求根據給定的一棵二叉樹的後序遍歷和中序遍歷結果,輸出該樹的先序遍歷結果。第一行給出正整數 n 是樹中結點的個數。隨後兩行,每行給出 n個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。在一行中輸出preorder 以及該樹的先序遍歷結果。數字間有1個空格...
根據後序和中序遍歷輸出先序遍歷
本題要求根據給定的一棵二叉樹的後序遍歷和中序遍歷結果,輸出該樹的先序遍歷結果。輸入格式 第一行給出正整數nn le 30 30 是樹中結點的個數。隨後兩行,每行給出nn個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。輸出格式 在一行中輸出preorder 以...
根據後序和中序遍歷輸出先序遍歷
本題要求根據給定的一棵二叉樹的後序遍歷和中序遍歷結果,輸出該樹的先序遍歷結果。第一行給出正整數n 30 是樹中結點的個數。隨後兩行,每行給出n個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。在一行中輸出preorder 以及該樹的先序遍歷結果。數字間有1個空...