首先,我们上一篇说到了递归的二叉树套路,但是递归还有一种更常见的类型,就是题目我们要找到所有有可能的集合,这种类型我称之为"数组添加"。当然我现在这么说,可能你们看得也很懵,但是我举几个例子你们就懂了。我从leetcode里面找来了几道题目: ①给定一个数组 candidates 和一个目标数 ta ...
分类:
编程语言 时间:
2020-09-09 18:50:07
阅读次数:
38
题目: 题目解析: 这个题目和之前我们做的稍微有一点不一样,需要我们在函数里面再写一个函数才能够进行递归,还有一种则是广度优先搜索的方法来求解这道题,这两种方法都需要掌握。这里先给出递归解法,迭代的方法稍后在补充。递归的方法你看看代码自然就懂了: # Definition for a binary ...
分类:
编程语言 时间:
2020-09-09 18:44:42
阅读次数:
24
题目: 给定两个二叉树,编写一个函数来检验它们是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 题目解析: 方法一: 这个题目很明显就可以用递归来做,有关树的题目用递归来做基本上是我们需要想到的首选!如果两个树是相同的,我们只需要比较其树根是相同的,同时递归调用比较树根 ...
分类:
编程语言 时间:
2020-09-09 18:40:26
阅读次数:
32
题目描述: 最长有效括号给定一个只包含 '(' 和 ')' 的字符串,找出最长的包含有效括号的子串的长度。 示例 1: 输入: "(()" 输出: 2 解释: 最长有效括号子串为 "()" 示例 2: 输入: ")()())" 输出: 4 解释: 最长有效括号子串为 "()()" 来源:力扣(Lee ...
分类:
其他好文 时间:
2020-09-08 20:47:15
阅读次数:
34
题目链接 1419. 数青蛙 题目思路 这个题一开始我也没啥思路,所以参考了评论区的大佬的解法,然后自己写了点自己的理解。 代码 class Solution { public int minNumberOfFrogs(String croakOfFrogs) { char[] str = croa ...
分类:
其他好文 时间:
2020-09-07 18:48:46
阅读次数:
34
题目描述链接:https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/ 基本思路:dfs搜索即可。 LeetCode C++求解代码: class Solution { public: vector<string> ...
分类:
其他好文 时间:
2020-09-04 17:08:51
阅读次数:
65
JAVA: public final int maxNonOverlapping(int[] nums, int target) { int re = 0; int point = 0; while (point < nums.length) { int sum = 0; Set<Integer> ...
分类:
编程语言 时间:
2020-09-03 17:04:17
阅读次数:
49
设计一个算法,并编写代码来序列化和反序列化二叉树。将树写入一个文件被称为“序列化”,读取文件后重建同样的二叉树被称为“反序列化”。 如何反序列化或序列化二叉树是没有限制的,你只需要确保可以将二叉树序列化为一个字符串,并且可以将字符串反序列化为原来的树结构。 对二进制树进行反序列化或序列化的方式没有限 ...
分类:
其他好文 时间:
2020-09-03 16:42:35
阅读次数:
31
题意: 给你一个括号序列,求其中最长的合法括号序列的长度。 思路: 这个题的核心思路,其实是合法括号序列的定义。 合法括号的定义如下: "()" 是一个合法括号序列; 如果 "|" 表示一个合法序列,那么 "(|)" 也是一个合法序列; 如果 "|" 表示一个合法序列,那么 "||" 也是一个合法序 ...
分类:
其他好文 时间:
2020-09-03 16:29:50
阅读次数:
24
leetCode 第42题,单调栈典型//给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 //// //// 上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水) ...
分类:
其他好文 时间:
2020-08-31 13:26:51
阅读次数:
54