二叉树查找值为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;

	
}
相关推荐
xxxxxxllllllshi40 分钟前
【LeetCode Hot100----14-贪心算法(01-05),包含多种方法,详细思路与代码,让你一篇文章看懂所有!】
java·数据结构·算法·leetcode·贪心算法
铁手飞鹰1 小时前
二叉树(C语言,手撕)
c语言·数据结构·算法·二叉树·深度优先·广度优先
[J] 一坚3 小时前
深入浅出理解冒泡、插入排序和归并、快速排序递归调用过程
c语言·数据结构·算法·排序算法
司铭鸿3 小时前
祖先关系的数学重构:从家谱到算法的思维跃迁
开发语言·数据结构·人工智能·算法·重构·c#·哈希算法
yk0820..3 小时前
测试用例的八大核心要素
数据结构
北京地铁1号线4 小时前
数据结构:堆
java·数据结构·算法
得物技术4 小时前
从数字到版面:得物数据产品里数字格式化的那些事
前端·数据结构·数据分析
靠沿9 小时前
Java数据结构初阶——LinkedList
java·开发语言·数据结构
Elias不吃糖9 小时前
LeetCode每日一练(209, 167)
数据结构·c++·算法·leetcode