程式設計師100題 15 求二元查詢樹的映象

2021-06-01 22:09:55 字數 819 閱讀 3425

題目:輸入一顆二元查詢樹,將該樹轉換為它的映象,即在轉換後的二元查詢樹中,左子樹的結點都大於右子樹的結點。用遞迴和迴圈兩種方法完成樹的映象轉換。

例如輸入: 8

/\610

/\/\

57911

輸出: 8/\

10 6

/\ /\

119  75

定義二元查詢樹的結點為:

struct

bstreenode // a node in the binary search tree (bst);

#include

#include

using namespace std;

struct bitree 

;void initbitree(bitree* &root)

else if(root!=null)

}void presearch(bitree* root)

coutpresearch(root->left);

presearch(root->right);

}void changeboth(bitree* &root)

changeboth(root->left);

changeboth(root->right);

bitree* t;

t=root->left;

root->left=root->right;

root->right=t;

}void mirrorrecusively(bitree* &root)

if (pnode->right)}}

int main()

程式設計師面試題精選 11 求二元查詢樹的映象

題目 輸入一顆二元查詢樹,將該樹轉換為它的映象,即在轉換後的二元查詢樹中,左子樹的結點都大於右子樹的結點。用遞迴和迴圈兩種方法完成樹的映象轉換。例如輸入 8 6 10 5 7 9 11 輸出 8 10 6 11 9 7 5 定義二元查詢樹的結點為 c structbstreenode a node ...

求二元查詢樹的映象

題目 輸入一顆二元查詢樹,將該樹轉換為它的映象,即在轉換後的二元查詢樹中,左子樹的結點都大於右子樹的結點。用遞迴和迴圈兩種方法完成樹的映象轉換。例如輸入 8 610 57 911輸出 8 106 11 9 7 5定義二元查詢樹的結點為 struct bstreenode a node in the ...

求二元查詢樹的映象

程式設計師面試題精選 11 求二元查詢樹的映象 題目 輸入一顆二元查詢樹,將該樹轉換為它的映象,即在轉換後的二元查詢樹中,左子樹的結點都大於右子樹的結點。用遞迴和迴圈兩種方法完成樹的映象轉換。例如輸入 8 610 5 7911輸出 8 106 1197 5定義二元查詢樹的結點為 struct bst...