摘要: 题目 :https://leetcode cn.com/problems/validate binary search tree/ 给定一个二叉树,判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数。 节点的右子树只包含大于当前节点的数。 所有左 阅读全文
posted @ 2020-02-12 19:44 patrolli 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 题目 :https://leetcode cn.com/problems/unique binary search trees/submissions/ 给定一个整数 n,求以 1 ... n 为节点组成的二叉搜索树有多少种? 思路 : 动态规划,设状态dp(i)表示从1 i的序列可以组成的二叉搜索 阅读全文
posted @ 2020-02-12 18:53 patrolli 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 二叉树的递归遍历很容易写出来,对于递归遍历则需要借助辅助栈,并且不同的遍历次序迭代的写法也不尽相同,这里整理一些二叉树迭代遍历的实现 二叉树的前序遍历 [leetcode144]:https://leetcode cn.com/problems/binary tree preorder traver 阅读全文
posted @ 2020-02-10 23:27 patrolli 阅读(484) 评论(0) 推荐(0) 编辑
摘要: 题目 :https://leetcode cn.com/problems/unique binary search trees ii/ 给定一个整数 n,生成所有由 1 ... n 为节点所组成的二叉搜索树。 思路 :还是要从递归的角度去思考,策略是,从1 n中选择i作为根节点,那么1 i 1作为它 阅读全文
posted @ 2020-02-10 23:08 patrolli 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 题目 :https://leetcode cn.com/problems/path sum/ 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。 说明: 叶子节点是指没有子节点的节点。 思路 :还是树的递归遍历,需要学习这种简洁的递归写法 代码 阅读全文
posted @ 2020-02-08 22:17 patrolli 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 题目 :https://leetcode cn.com/problems/combinations/submissions/ 给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合。 样例输入与输出 : 输入: n = 4, k = 2 输出: [ [2,4], [3,4], 阅读全文
posted @ 2020-01-30 17:55 patrolli 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 题目 :https://leetcode cn.com/problems/generate parentheses/ 给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。 样例输入与输出 : n = 3 输出: [ "((()))", "(()())", "(( 阅读全文
posted @ 2020-01-30 17:23 patrolli 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 题目 :https://leetcode cn.com/problems/permutations/ 给定一个没有重复数字的序列,返回其所有可能的全排列。 样例输入与输出 : 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], 阅读全文
posted @ 2020-01-29 21:16 patrolli 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 题目 :https://leetcode cn.com/problems/letter case permutation/ 给定一个字符串S,通过将字符串S中的每个字母转变大小写,我们可以获得一个新的字符串。返回所有可能得到的字符串集合。 样例输入与输出 : S = "a1b2" ["a1b2", 阅读全文
posted @ 2020-01-29 20:39 patrolli 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 题目 : "链接" 给定一个整数n,将数字1~n排成一排,将会有很多种排列方法。 现在,请你按照字典序将所有的排列方法输出 样例输入 : 3 样例输出 : 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 思路 全排列问题,这里用回溯的方法实现 代码 阅读全文
posted @ 2020-01-25 14:32 patrolli 阅读(168) 评论(0) 推荐(0) 编辑