二叉查詢樹(binary search tree),或者是一棵空樹,或者是具有下列性質的
二叉樹: 若它的左子樹不空,則左子樹上所有結點的值均小於它的根結點的值; 若它的右子樹不空,則右子樹上所有結點的值均大於它的根結點的值; 它的左、右子樹也分別為
二叉排序樹。
題意就是判斷兩個序列是否代表同一棵樹;
//二叉搜尋樹 叉排
#include#includeusing namespace std;
//建立節點
struct node
};//插入
void insertnode(node* &root, int v)
if(v < (root->value))
insertnode(root->left, v);
else
insertnode(root->right, v);
}//刪除
void deletetree(node* &root)
}//建樹
void buildtree(node* &root, string tr)
//比較
bool compare(node* &a, node* &b)
else return false;
} return true;
}int main()
deletetree(root);
} return 0;
}
hdu3791二叉搜尋樹
hdu3791二叉搜尋樹 又是二叉搜尋樹的前序遍歷。1.建樹會順序影響整棵樹的形狀 2.記得釋放資源 3.可以用雙重指標和引用優化程式。某些printf 是之前設定的斷點,可以無視之 includeusing namespace std struct bst root bst insert bst ...
hdu 3791 二叉搜尋樹
problem description 判斷兩序列是否為同一二叉搜尋樹序列 input 開始乙個數n,1 n 20 表示有n個需要判斷,n 0 的時候輸入結束。接下去一行是乙個序列,序列長度小於10,包含 0 9 的數字,沒有重複數字,根據這個序列可以構造出一顆二叉搜尋樹。接下去的n行有n個序列,每...
HDU 3791 二叉搜尋樹
problem description 判斷兩序列是否為同一二叉搜尋樹序列 input 開始乙個數n,1 n 20 表示有n個需要判斷,n 0 的時候輸入結束。接下去一行是乙個序列,序列長度小於10,包含 0 9 的數字,沒有重複數字,根據這個序列可以構造出一顆二叉搜尋樹。接下去的n行有n個序列,每...