会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Frodo's blog
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
7
8
9
10
11
12
13
14
15
···
22
下一页
2023年2月27日
【DFS】LeetCode 51. N 皇后
摘要: 题目链接 51. N 皇后 思路 使用三个数组分别记录列、主对角线、副对角线的可放置状态。因为是按行进行搜索,在当前行放置后必进入下一行,所以不用记录行的状态。 private boolean[] mainDiagonal; private boolean[] subDiagonal; privat
阅读全文
posted @ 2023-02-27 08:37 Frodo1124
阅读(33)
评论(0)
推荐(0)
2023年2月13日
【栈】LeetCode 394. 字符串解码
摘要: 题目链接 394. 字符串解码 思路 建立一个数字栈 numStack 和一个字符串栈 stringBuilderStack。遍历字符串 s: 遇到数字和字符时按照相应规则分别累加进 k 和 result 中。 遇到 [ 时将 k 和 result 的值压入栈中并清空变量。 遇到 ] 时将两个栈的栈
阅读全文
posted @ 2023-02-13 19:17 Frodo1124
阅读(37)
评论(0)
推荐(0)
【DFS】LeetCode 341. 扁平化嵌套列表迭代器
摘要: 题目链接 341. 扁平化嵌套列表迭代器 思路 遍历 nestedList,碰见子列表便将该子列表传入下一层递归中遍历,直到遍历完所有元素。 代码 class NestedIterator implements Iterator<Integer> { ArrayList<Integer> resul
阅读全文
posted @ 2023-02-13 10:53 Frodo1124
阅读(35)
评论(0)
推荐(0)
2023年2月12日
【DFS】LeetCode 108. 将有序数组转换为二叉搜索树
摘要: 题目链接 108. 将有序数组转换为二叉搜索树 思路 类似于二分搜索,定位到数组中间 mid,然后左边的子数组构成左子树,右边的子数组构成右子树,mid 处的数字构成根结点。递归构建左右子树即可,最后返回 root。 代码 class Solution { public TreeNode sorte
阅读全文
posted @ 2023-02-12 19:37 Frodo1124
阅读(29)
评论(0)
推荐(0)
【DFS】LeetCode 669. 修剪二叉搜索树
摘要: 题目链接 669. 修剪二叉搜索树 思路 若 root.val 小于边界值 low,则 root 的左子树必然均小于边界值,我们递归处理 root.right 即可; 若 root.val 大于边界值 high,则 root 的右子树必然均大于边界值,我们递归处理 root.left 即可; 若 r
阅读全文
posted @ 2023-02-12 19:19 Frodo1124
阅读(29)
评论(0)
推荐(0)
【DFS】LeetCode 98. 验证二叉搜索树
摘要: 题目链接 98. 验证二叉搜索树 思路 依据 BST 的定义:左子树的结点都比根结点小,右子树的结点都比根结点大。我们在递归过程中传递根节点的值,判断当前结点值与根结点值的大小关系。 代码 class Solution { public boolean isValidBST(TreeNode roo
阅读全文
posted @ 2023-02-12 17:53 Frodo1124
阅读(25)
评论(0)
推荐(0)
【DFS】LeetCode 230. 二叉搜索树中第K小的元素
摘要: 题目链接 230. 二叉搜索树中第K小的元素 思路 利用 BST 中序遍历是有序的特点,同时每遍历完一个结点将 k--,当 k = 0 的时候,当前结点是第 k 个结点 代码 class Solution { private int k; private int result; public int
阅读全文
posted @ 2023-02-12 15:38 Frodo1124
阅读(30)
评论(0)
推荐(0)
2023年2月4日
【DFS】LeetCode 863. 二叉树中所有距离为 K 的结点
摘要: 题目链接 863. 二叉树中所有距离为 K 的结点 思路 因为在二叉树中,每个结点至多连接三条边,并且其中两条已经通过左右子结点的形式给出,所以我们只需要记录每个结点的父结点即可。 使用 Map 记录每个结点的父结点,再直接以 target 作为源点开始 DFS,记录与 target 距离为 k 的
阅读全文
posted @ 2023-02-04 11:37 Frodo1124
阅读(30)
评论(0)
推荐(0)
2023年2月3日
【DFS】LeetCode 572. 另一棵树的子树
摘要: 题目链接 572. 另一棵树的子树 思路 判断两个树是否相等的三个条件是与的关系,即: 当前两个树的根节点值相等; 并且,s 的左子树和 t 的左子树相等; 并且,s 的右子树和 t 的右子树相等。 而判断 subRoot 是否为 root 的子树的三个条件是或的关系,即: 当前两棵树相等; 或者,
阅读全文
posted @ 2023-02-03 17:22 Frodo1124
阅读(26)
评论(0)
推荐(0)
【DFS】LeetCode 104. 二叉树的最大深度
摘要: 题目链接 104. 二叉树的最大深度 思路 递归求左右子树的最大深度并取最大值,返回值在最大值上+1。 递归终止条件为 root == null,此时返回 0。 代码 class Solution { public int maxDepth(TreeNode root) { if(root == n
阅读全文
posted @ 2023-02-03 14:33 Frodo1124
阅读(27)
评论(0)
推荐(0)
上一页
1
···
7
8
9
10
11
12
13
14
15
···
22
下一页
公告