L3 010 是否完全二叉搜尋樹 30分

2021-10-10 22:38:26 字數 1089 閱讀 4489

將一系列給定數字順序插入乙個初始為空的二叉搜尋樹(定義為左子樹鍵值大,右子樹鍵值小),你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。

輸入格式:

輸入第一行給出乙個不超過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個正整數順序插入乙個初始為空的二叉...