將一系列給定數字順序插入乙個初始為空的二叉搜尋樹(定義為左子樹鍵值大,右子樹鍵值小),你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。
輸入第一行給出乙個不超過20的正整數n
;第二行給出n
個互不相同的正整數,其間以空格分隔。
將輸入的n
個正整數順序插入乙個初始為空的二叉搜尋樹。在第一行中輸出結果樹的層序遍歷結果,數字間以1個空格分隔,行的首尾不得有多餘空格。第二行輸出yes
,如果該樹是完全二叉樹;否則輸出no
。
9
38 45 42 24 58 30 67 12 51
38 45 24 58 42 30 12 67 51
yes
8
38 24 12 45 58 67 42 51
38 45 24 58 42 12 67 51
no
#include using namespace std;
bool f=true,exs=false;
typedef struct bnode *bintree;
struct bnode
;void insert(bintree &t,int e)
else if(e>t->data)
else if(edata)
}void print(bintree t)
else if(temp->left&&!temp->right)
else if(temp->right&&!temp->left)
else if(!temp->left&&!temp->right)exs=true;
}cout<>n;
for(int i=0;i>a;
insert(t,a);
}print(t);
}
是否完全二叉搜尋樹 30分
時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 將一系列給定數字順序插入乙個初始為空的二叉搜尋樹 定義為左子樹鍵值大,右子樹鍵值小 你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。輸入格式 輸入第一行給出乙個不超過...
是否完全二叉搜尋樹(30 分)
將一系列給定數字順序插入乙個初始為空的二叉搜尋樹 定義為左子樹鍵值大,右子樹鍵值小 你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。輸入格式 輸入第一行給出乙個不超過20的正整數n 第二行給出n個互不相同的正整數,其間以空格分隔。輸出格式 將輸入的n個正整數順序插入乙個初始為空的二叉...
5 13 是否完全二叉搜尋樹 30分
5 13 是否完全二叉搜尋樹 30分 將一系列給定數字順序插入乙個初始為空的二叉搜尋樹 定義為左子樹鍵值大,右子樹鍵值小 你需要判斷最後的樹是否一棵完全二叉樹,並且給出其層序遍歷的結果。輸入第一行給出乙個不超過20的正整數n 第二行給出n個互不相同的正整數,其間以空格分隔。將輸入的n個正整數順序插入...