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

	
}
相关推荐
iFlyCai6 小时前
C语言中的指针
c语言·数据结构·算法
查古穆6 小时前
栈-有效的括号
java·数据结构·算法
汀、人工智能6 小时前
16 - 高级特性
数据结构·算法·数据库架构·图论·16 - 高级特性
汀、人工智能9 小时前
[特殊字符] 第2课:字母异位词分组
数据结构·算法·链表·数据库架构··字母异位词分组
网安INF9 小时前
数据结构第一章复习:基本概念与算法复杂度分析
数据结构·算法
xiaoye-duck11 小时前
【C++:哈希表封装】哈希表封装 myunordered_map/myunordered_set 实战:底层原理 + 完整实现
数据结构·c++·散列表
汀、人工智能11 小时前
[特殊字符] 第3课:最长连续序列
数据结构·算法·数据库架构·图论·bfs·最长连续序列
Kethy__11 小时前
计算机中级-数据库系统工程师-数据结构-图
数据结构·算法·软考··数据库系统工程师·计算机中级
亿秒签到12 小时前
L2-007 家庭房产
数据结构·c++·算法
paeamecium12 小时前
【PAT甲级真题】- Longest Symmetric String (25)
数据结构·c++·算法·pat考试