力扣算法图解
Java、Python3 语言实现,「专题」教程持续更新中...
「力扣」第 416 题:分割等和子集 「力扣」第 416 题:分割等和子集
「力扣」第 416 题:分割等和子集 链接 题解链接 给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 注意: 每个数组中的元素不会超过 100数组的大小不会超过 200示例 1: 输入: [
「力扣」第 377 题:组合总和 Ⅳ 「力扣」第 377 题:组合总和 Ⅳ
「力扣」第 377 题:组合总和 Ⅳ 链接 题解链接 给定一个由正整数组成且不存在重复数字的数组,找出和为给定目标正整数的组合的个数。 示例: nums = [1, 2, 3] target = 4 所有可能的组合为: (1, 1,
「力扣」第 376 题:摆动序列 「力扣」第 376 题:摆动序列
「力扣」第 376 题:摆动序列 提示:1、状态机;2、贪心。 链接 题解链接 一个序列,它的相邻数字的大小关系是升序降序轮流交替的(最初可以是升序,也可以是降序),就称为wiggle sequence。比如[1, 7, 4, 9,
「力扣」第 354 题:俄罗斯套娃 「力扣」第 354 题:俄罗斯套娃
Python 代码: from typing import List class Solution: def maxEnvelopes(self, envelopes: List[List[int]]) -> int:
「力扣」第 343 题:整数拆分 「力扣」第 343 题:整数拆分
「力扣」第 343 题:整数拆分传送门:343. 整数拆分。 给定一个正整数 n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。 返回你可以获得的最大乘积。 示例 1: 输入: 2 输出: 1 解释: 2 = 1 + 1, 1
「力扣」第 337 题:打家劫舍 III 「力扣」第 337 题:打家劫舍 III
「力扣」第 337 题:打家劫舍 III 这道题是「树形 dp」问题,如果「树形 dp」暂时不能理解的话,我感觉暂时也没有关系,先理解有「重叠子问题」,把「记忆化递归」加上。 链接 在上次打劫完一条街道之后和一圈房屋后,小偷又发现了
「力扣」第 322 题:零钱兑换 「力扣」第 322 题:零钱兑换
「力扣」第 322 题:零钱兑换 传送门:322. 零钱兑换; 题解链接:https://leetcode-cn.com/problems/coin-change/solution/dong-tai-gui-hua-shi-yong-wa
「力扣」第 309 题:最佳买卖股票时机含冷冻期 「力扣」第 309 题:最佳买卖股票时机含冷冻期
「力扣」第 309 题:最佳买卖股票时机含冷冻期 链接:309. 最佳买卖股票时机含冷冻期。 题解链接 给定一个整数数组,其中第 i 个元素代表了第 i 天的股票价格 。 设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地
「力扣」第 300 题:最长上升子序列(中等) 「力扣」第 300 题:最长上升子序列(中等)
「力扣」第 300 题:最长上升子序列(中等) 经典的「动态规划」问题,不同的定义状态的方式,可以得到不同复杂度的求解方法。 链接 题解链接 给定一个无序的整数数组,找到其中最长上升子序列的长度。 示例: 输入: [10,9,2,5
「力扣」第 279 题:完全平方数(中等) 「力扣」第 279 题:完全平方数(中等)
「力扣」第 279 题:完全平方数(中等) 链接 给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。 示例 1: 输入: n = 12 输出: 3
2 / 5