時間限制
400 ms
記憶體限制
65536 kb
**長度限制
8000 b
判題程式
standard 作者
陳越將一系列給定數字順序插入乙個初始為空的二叉搜尋樹(定義為左子樹鍵值大,右子樹鍵值小),你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。
輸入格式:
輸入第一行給出乙個不超過20的正整數n;第二行給出n個互不相同的正整數,其間以空格分隔。
輸出格式:
將輸入的n個正整數順序插入乙個初始為空的二叉搜尋樹。在第一行中輸出結果樹的層序遍歷結果,數字間以1個空格分隔,行的首尾不得有多餘空格。第二行輸出「yes」,如果該樹是完全二叉樹;否則輸出「no」。
輸入樣例1:
9輸出樣例1:38 45 42 24 58 30 67 12 51
38 45 24 58 42 30 12 67 51輸入樣例2:yes
8輸出樣例2:38 24 12 45 58 67 42 51
38 45 24 58 42 12 67 51no
// 這題就是用陣列模擬二叉樹,然後按題意插入資料,記得陣列開大一點,樹可能會有20層
#include #define max_size 1048576
using namespace std;
int tree[max_size + 1] = ;
void insert(int root, int num)
else if (num > tree[root])
else
insert(root * 2, num);
} else
else
insert(root * 2 + 1, num);
} return;
}int main()
bool flag = true;
int num_node = 1;
for (int i = 1; i <= max_size; i++)
else
flag = false;
} cout << endl;
if (flag)
cout << "yes";
else
cout << "no";
return 0;
}
L3 010 是否完全二叉搜尋樹
l3 010.是否完全二叉搜尋樹 將一系列給定數字順序插入乙個初始為空的二叉搜尋樹 定義為左子樹鍵值大,右子樹鍵值小 你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。輸入格式 輸入第一行給出乙個不超過20的正整數n 第二行給出n個互不相同的正整數,其間以空格分隔。輸出格式 將輸入的n...
L3 010 是否完全二叉搜尋樹
時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越將一系列給定數字順序插入乙個初始為空的二叉搜尋樹 定義為左子樹鍵值大,右子樹鍵值小 你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。輸入格式 輸入第一行給出乙個不超過2...
L3 010 是否完全二叉搜尋樹
將一系列給定數字順序插入乙個初始為空的二叉搜尋樹 定義為左子樹鍵值大,右子樹鍵值小 你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。輸入格式 輸入第一行給出乙個不超過20的正整數n 第二行給出n個互不相同的正整數,其間以空格分隔。輸出格式 將輸入的n個正整數順序插入乙個初始為空的二叉...