int main() { // Balanced int inArr[] = {4, 2, 5, 1, 6, 3}; int preArr[] = {1, 2, 4, 5, 3, 6}; // Unbalanced //int inArr[] = {4, 3, 5, 2, 1, 6}; //int preArr[] = {1, 2, 3, 4, 5, 6}; Tree<int> *root = new Tree<int>(); TreeNode<int> *tree = new TreeNode<int>(); tree = root->BuildTreeUsingPreInorder(tree, preArr, inArr, 0, sizeof(inArr)/sizeof(int) - 1, 0, sizeof(preArr)/sizeof(int) - 1); root = new Tree<int>(tree); int h; cout << root->IsBalance(root->GetRoot(), h) << endl; system("pause"); return 0; }