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

	
}
相关推荐
青山木4 小时前
Hot 100 --- 在排序数组中查找元素的第一个和最后一个位置
java·数据结构·算法·leetcode
依然鸣5 小时前
PTA团体程序设计天梯赛L2真题讲解L2-045-048
数据结构·c++·经验分享·学习·算法·pat考试·pat
CQU_JIAKE6 小时前
8.5【A】
数据结构·算法
Jasmine_llq7 小时前
《P13016 [GESP202506 六级] 最大因数》
数据结构·算法
凉茶钱10 小时前
【数据结构】C语言实现队列
c语言·数据结构
zander25811 小时前
34. 在排序数组中查找元素的第一个和最后一个位置:用两个边界定位区间
数据结构·算法·leetcode
乐观勇敢坚强的老彭1 天前
C++信奥静态数组和动态数组
数据结构·c++·算法
旖旎夜光1 天前
LeetCode 991: 坏了的计算器(贪心算法) —— 题解
数据结构·c++·算法·leetcode·贪心算法
旖旎夜光1 天前
LeetCode 553:最优除法(贪心算法) —— 题解
数据结构·c++·算法·leetcode·贪心算法
雾喔1 天前
算法练习7
java·数据结构·算法