二叉树查找值为x的节点

递归的思路:先判断是不是空树如果的空就返回NULL;

在判断节点的值是否是x,如果是的话就返回这个节点

不是的话就继续递归

c 复制代码
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;

	
}
相关推荐
Bear on Toilet24 分钟前
递归_二叉树_50 . 从前序与中序遍历序列构造二叉树
数据结构·算法·leetcode·深度优先·递归
ArturiaZ4 小时前
【day29】
数据结构·c++·算法
Stringzhua5 小时前
队列-优先队列【Queue3】
java·数据结构·队列
季明洵9 小时前
数据在内存中的存储
数据结构·算法·c
阿昭L9 小时前
AVL树及其计算
数据结构
云深处@10 小时前
【数据结构】树&&堆
数据结构
星火开发设计11 小时前
关联式容器:map 与 multimap 的键值对存储
java·开发语言·数据结构·c++·算法
散峰而望11 小时前
【算法竞赛】二叉树
开发语言·数据结构·c++·算法·深度优先·动态规划·宽度优先
Stringzhua11 小时前
队列-双端队列【Queue2】
java·数据结构·算法·队列
重生之后端学习12 小时前
994. 腐烂的橘子
java·开发语言·数据结构·后端·算法·深度优先