二叉树查找值为x的节点

递归的思路:先判断是不是空树如果的空就返回NULL;
在判断节点的值是否是x,如果是的话就返回这个节点
不是的话就继续递归

二叉树查找值为x的节点_第1张图片

BTNode* BinaryTreeFind(BTNode* root, int x)
{
	if (root == NULL)
	{
		return NULL;
	}
	if (root->val == x)
	{
		return root;
	}

	BTNode* ret = NULL;
	ret = BinaryTreeFind(root->left, x);
	if (ret)
	{
		return ret;
	}
	ret = BinaryTreeFind(root->right, x);
	if (ret)
	{
		return ret;
	}
	return NULL;

	
}

你可能感兴趣的:(数据结构)