疏凉
疏凉
全部文章
分类
题解(101)
归档
标签
去牛客网
登录
/
注册
疏凉的博客
全部文章
(共5篇)
题解 | #二叉树中和为某一值的路径(三)#
双重递归; 外层递归: 当前树为空返回 判断当前树满足路径数; 继续判断当前树的左右子树是否有满足路径; 遍历完成返回结果。 内层递归: 当前节点为空返回; 当前节点值等于目标值,结果+1; 处理左节点; 处理右节点。 /** * struct TreeNode { * int val; *...
C++
二叉树
深度优先搜索
2022-04-28
0
267
题解 | #字符串的排列#
对字符串进行排序,用于后续剔除重复排序; 采用递归+回溯,当组合长度等于字符串长度时,将该组合放入结果并返回; 如果本层已使用过相同原始,跳过本次组合; 如果当前元素还未使用过,则将该元素放入本次组合,继续进行本次组合,返回后弹出该元素继续进行其他组合; 所有情况遍历完成后,返回最终排列结果。 c...
C++
字符串
深度优先搜索
回溯
2022-04-28
0
355
题解 | #矩阵中的路径#
DFS,与word进行匹配; 建立与矩阵大小一样的标志,确保每个元素只使用一次; 遍历矩阵中每个元素,作为DFS的初始值; 如果已匹配元素个数与word大小相同,返回true; 如果当前元素使用过,返回false; 如果当前元素与word字符不匹配,返回false; 当前元素使用过,标志相应为tru...
C++
字符串
深度优先搜索
2022-04-15
1
228
题解 | #在二叉树中找到两个节点的最近公共祖先#
递归 如果当前节点值等于o1或者o2,返回当前节点; 如果当前节点的左右子节点都有返回值,则当前节点为公共祖先; 如果只有一个子节点有返回值,则返回该值; 如果节点为空,返回NULL。 /** * struct TreeNode { * int val; * struct TreeNode ...
C++
二叉树
深度优先搜索
递归
2022-04-08
0
187
题解 | #二叉树的最大深度#
递归法 终止条件:节点为NULL; 左右子树最大深度+1为当前节点的最大深度。 /** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ class So...
C++
深度优先搜索
二叉树
递归
2022-04-08
0
196