Example #1
0
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;
}