將一系列給定數字順序插入乙個初始為空的二叉搜尋樹(定義為左子樹鍵值大,右子樹鍵值小),你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。
輸入格式:
輸入第一行給出乙個不超過20的正整數n;第二行給出n個互不相同的正整數,其間以空格分隔。
輸出格式:
將輸入的n個正整數順序插入乙個初始為空的二叉搜尋樹。在第一行中輸出結果樹的層序遍歷結果,數字間以1個空格分隔,行的首尾不得有多餘空格。第二行輸出yes,如果該樹是完全二叉樹;否則輸出no。
輸入樣例1:
938 45 42 24 58 30 67 12 51
輸出樣例1:
38 45 24 58 42 30 12 67 51
yes輸入樣例2:
838 24 12 45 58 67 42 51
輸出樣例2:
38 45 24 58 42 12 67 51
no
#include
using
namespace std;
#define ll long long
int n,f;
struct node
;struct node *
creat
(int x,
struct node *root)
if(root-
>dataroot-
>l=
creat
(x,root-
>l)
;else root-
>r=
creat
(x,root-
>r)
;return root;
}void
bfs(
struct node *root)
if(now-
>r!=
null)}
cout<}int
main()
f=0;bfs
(root);if
(f) cout<<
"no"
"yes"
}
L3 010 是否完全二叉搜尋樹
l3 010.是否完全二叉搜尋樹 將一系列給定數字順序插入乙個初始為空的二叉搜尋樹 定義為左子樹鍵值大,右子樹鍵值小 你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。輸入格式 輸入第一行給出乙個不超過20的正整數n 第二行給出n個互不相同的正整數,其間以空格分隔。輸出格式 將輸入的n...
L3 010 是否完全二叉搜尋樹
時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越將一系列給定數字順序插入乙個初始為空的二叉搜尋樹 定義為左子樹鍵值大,右子樹鍵值小 你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。輸入格式 輸入第一行給出乙個不超過2...
L3 010 是否完全二叉搜尋樹
將一系列給定數字順序插入乙個初始為空的二叉搜尋樹 定義為左子樹鍵值大,右子樹鍵值小 你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。輸入格式 輸入第一行給出乙個不超過20的正整數n 第二行給出n個互不相同的正整數,其間以空格分隔。輸出格式 將輸入的n個正整數順序插入乙個初始為空的二叉...