03 2022 档案
摘要:力扣 二叉树展开为链表(dfs) 题目链接:https://leetcode-cn.com/problems/flatten-binary-tree-to-linked-list/ 题目的意思是按照其先序遍历的顺序将二叉树展开为链表,要求使用O(1)的内存空间,所以先排除先序遍历出存储起来再构造链表
阅读全文
摘要:力扣 验证二叉搜索树(dfs或中序遍历) 题目链接:https://leetcode-cn.com/problems/validate-binary-search-tree/ 题目的意思就是验证一棵树是不是二叉搜索树 二叉搜索树的特征就是左孩子值小于根节点值,右孩子值大于根节点值 解析: 方法1就是
阅读全文
摘要:力扣 组合总和(标准dfs) 题目链接:https://leetcode-cn.com/problems/combination-sum/ 题目的大致意思就是从一个没有重复元素的数组中,抽取任意个数其和要等于target,让你列出所有的组合方式 需要注意的是可选择多个同样的数组元素,无单个限制 解析
阅读全文
摘要:力扣 二叉树的直径(dfs) 题目链接:https://leetcode-cn.com/problems/diameter-of-binary-tree/ 题目的意思是求二叉树的直径,就是从任意节点出发,到任意节点结束,最长的那一条路径,也就是这条路上经过节点的数量减去1就是最长直径 需要明确的是,
阅读全文
摘要:力扣 相交链表 题目链接:https://leetcode-cn.com/problems/intersection-of-two-linked-lists 题目大致意思就是判断两个链表有没有交点,有的话给出交点,没有的话返回null 要求是不能修改链表,并且时间复杂度为O(N+M),空间复杂度为O
阅读全文
摘要:力扣 括号生成(dfs+剪枝) 数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 示例 1: 输入:n = 3 输出:["((()))","(()())","(())()","()(())","()()()"] 示例 2: 输入:n = 1 输出:["(
阅读全文