leecode 39 Combination Sum backtracking 回溯算法 + 剪枝
缘起
一个不会解的问题
https://leetcode.com/problems/combination-sum/
给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。
candidates 中的数字可以无限制重复被选取。
说明:
所有数字(包括 target)都是正整数。
解集...
2020-06-08 07:13:08 |
Algorithm
leecode 详解 03-Manacher Algorithm 马拉车算法
Manacher’s Algorithm 马拉车算法。
马拉车算法 Manacher‘s Algorithm 是用来查找一个字符串的最长回文子串的线性方法,由一个叫Manacher的人在1975年发明的,这个方法的最大贡献是在于将时间复杂度提升到了线性。
解决奇偶的问题
首先我们解决下奇数和偶数的问题,在每个字符间插入”#”,并且为了使得扩展的过程中,到边界后自动结束,在两端分别插入 ...
2020-06-08 07:13:08 |
Algorithm
【leetcode】81-recursive 递归 汉诺塔(Tower of Hanoi)
chat
题目
汉诺塔(Tower of Hanoi)是一个经典的递归问题。问题描述是,有三个柱子和若干个盘子,初始状态下所有盘子按大小从小到大叠在第一个柱子上。目标是将所有盘子从第一个柱子移动到第三个柱子,但每次只能移动一个盘子,且大盘子不能放在小盘子上面。
解题思路
分解问题:假设有 ( n ) 个盘子在柱子 A 上,要将它们移动到柱子 C 上,可以分解为两个步骤:
...
2020-06-08 07:13:08 |
Algorithm
【leetcode】80-recursive 递归
chat
是什么?
递归算法是一种在计算机科学中非常常见的解决问题的方法,它通过函数调用自身来解决问题。
递归通常将复杂的问题分解成更小的子问题,通过逐步缩小问题规模直到满足某种条件(基准情况或边界条件)停止递归调用,从而得到解答。
递归的基本组成部分
一个典型的递归算法包含两个关键部分:
基准条件(Base Case):基准条件是递归算法停止递归的条件。它通常用于...
2020-06-08 07:13:08 |
Algorithm
【leetcode】73-3195. 包含所有 1 的最小矩形面积 I
题目
给你一个二维 二进制 数组 grid。请你找出一个边在水平方向和竖直方向上、面积 最小 的矩形,并且满足 grid 中所有的 1 都在矩形的内部。
返回这个矩形可能的 最小 面积。
示例 1:
输入: grid = [[0,1,0],[1,0,1]]
输出: 6
解释:
0 1 0
1 0 1
这个最小矩形的高度为 2,宽度为 3,因此面积为 2 * 3...
2020-06-08 07:13:08 |
Algorithm
【leetcode】73-greedy 2459. 通过移动项目到空白区域来排序数组
题目
给定一个大小为 n 的整数数组 nums,其中包含从 0 到 n - 1 (包含边界) 的 每个 元素。
从 1 到 n - 1 的每一个元素都代表一项目,元素 0 代表一个空白区域。
在一个操作中,您可以将 任何 项目移动到空白区域。如果所有项目的编号都是 升序 的,并且空格在数组的开头或结尾,则认为 nums 已排序。
例如,如果 n = 4,则 nums 按以下条件排序:...
2020-06-08 07:13:08 |
Algorithm
【leetcode】72-greedy 2548. 填满背包的最大价格 分数背包
题目
给定一个二维整数数组 items ,其中 items[i] = [pricei, weighti] 表示第 i 个物品的价格和重量。
还给定一个 正 整数容量 capacity 。
每个物品可以分成两个部分,比率为 part1 和 part2 ,其中 part1 + part2 == 1 。
第一个物品的重量是 weighti * part1 ,价格是 pricei * par...
2020-06-08 07:13:08 |
Algorithm
【leetcode】71-greedy 55 jump-game 力扣.55 跳跃游戏
题目
TBC…
参考资料
https://leetcode.cn/problems/house-robber/description/?envType=problem-list-v2&envId=dynamic-programming
题目
参考资料
2020-06-08 07:13:08 |
Algorithm