給你乙個搜尋二叉樹的前序遍歷(可能是錯的),讓你檢測它或者它的映象是不是真的搜尋二叉樹,是的話輸出它的後續遍歷
直接模擬一遍,比較考驗基本功。
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #define inf 0x3f3f3f3f
#define inf 0x3f3f3f3f3f3f3f3f
#define mem(a, b) memset(a, b, sizeof(a))
#define pb push_back
#define ll long long
using namespace std;
const double pi = acos(-1.0);
const int n = 2e5 + 10;
const int mod = 1e9 + 7;
/////////////////////////////////////////
typedef struct node
tr;vectora;
vectorpre;
vectorpost;
tr *insert_(tr *rt, int cur)
else
else
}return rt;
}void pre_(tr *rt)
return;
}void post_(tr *rt)
return;
}tr *aaaa(tr *rt)
rt->l = aaaa(rt->l);
rt->r = aaaa(rt->r);
swap(rt->l, rt->r);
return rt;
}int main()
pre_(rt);
int ok = 1;
for (int i = 0; i < n; i++) }
if (ok)
cout
} pre.clear();
rt = aaaa(rt);
pre_(rt);
for (int i = 0; i < n; i++) }
post_(rt);
cout << "yes" << endl;
for (int i = 0; i < n-1; i++)
cout
}
L2 004 這是二叉搜尋樹嗎?
時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 一棵二叉搜尋樹可被遞迴地定義為具有下列性質的二叉樹 對於任一結點,所謂二叉搜尋樹的 映象 即將所有結點的左右子樹對換位置後所得到的樹。給定乙個整數鍵值序列,現請你編寫程式,判斷這是否...
L2 004 這是二叉搜尋樹嗎?
一棵二叉搜尋樹可被遞迴地定義為具有下列性質的二叉樹 對於任一結點,其左子樹中所有結點的鍵值小於該結點的鍵值 其右子樹中所有結點的鍵值大於等於該結點的鍵值 其左右子樹都是二叉搜尋樹。所謂二叉搜尋樹的 映象 即將所有結點的左右子樹對換位置後所得到的樹。給定乙個整數鍵值序列,現請你編寫程式,判斷這是否是對...
L2 004 這是二叉搜尋樹嗎?
時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 一棵二叉搜尋樹可被遞迴地定義為具有下列性質的二叉樹 對於任一結點,所謂二叉搜尋樹的 映象 即將所有結點的左右子樹對換位置後所得到的樹。給定乙個整數鍵值序列,現請你編寫程式,判斷這是否...