判斷一顆二叉樹是否爲二叉搜索樹(Validate Binary Search Tree)

一、學習要點:
利用二叉搜索樹的中序遍歷爲遞增數組的性質;
二、代碼:

void middle(node* root,vector<int>& inorder)
{
	if(root==NULL)
	{
		return;
	}
	middle(root->left,inorder);
	inorder.push_back(root->value);
	middle(root->right,inorder);
}
bool isBST(node* root)
{
	vector<int> inorder;
	middle(root,inorder);
	for(int i=1;i<inorder.size();i++)
	{
		if(inorder[i-1]>=inorder[i])
		{
			return false;
		}
	}
	return true;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章