自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 354. 俄罗斯套娃信封问题(动态规划)

这个题目是一个套娃问题,首先我们应该对数组进行排序,因为相同尺寸的信封不能够嵌套,所以我们按照每个子数组的第一个元素升序排序,第二个元素降序排序,这样这个问题就转化成了以第二个元素为主的最长上升子序列问题,这个思路好是好,但是想到前面快速排序需要耗费nlog。如果envelopes[i]/[1]大于我们的f[i-1],那么f[i]=envelopes[i]/[1];当另一个信封的宽度和高度都比这个信封大的时候,这个信封就可以放进另一个信封里,如同俄罗斯套娃一样。n,后面的那个动态规划又是n。......

2022-07-28 18:35:27 631

原创 面试题 17.24. 最大子矩阵(动态规划)

显然这个题目是一个二维问题,那么我们就把它压缩成一维,然后再用上面的求解一维的方法,我们规定i是压缩的二维数组的起始行,j是压缩二维数组的结束行,那么那么我们需要遍历i和j;得到一个一维数组,然后寻找最大子序列的和,并记录这个最大子序列和的起始位置和结束位置,然后算出的最大值再去和一个全局最大值比较,如果超过他那么更新r1,r2,c1,c2。我们之前解决过一维数组的最大和问题,回顾一下就是规定长度为i的数组的最大和为dp[i]。**注意**本题相对书上原题稍作改动。分别代表子矩阵左上角的行号和列号,....

2022-07-28 18:20:51 110

原创 152.乘积最大子数组(动态规划)

单串问题之lis问题

2022-07-26 16:13:59 251

原创 300. 最长递增子序列(动态规划)

dp问题

2022-07-26 15:48:52 80

原创 539.最小时间差(小模拟)

题目:难度中等122收藏分享切换为英文接收动态反馈给定一个 24 小时制(小时:分钟 "HH:MM")的时间列表,找出列表中任意两个时间的最小时间差并以分钟数表示。示例 1:输入:timePoints = ["23:59","00:00"]输出:1示例 2:输入:timePoints = ["00:00","23:59","00:00"]输出:0提示: 2 <= timePoints <= 2 * 104 timePoints[i] 格

2022-01-31 10:44:47 503 1

原创 452用最少的箭引爆气球

题目:难度中等507收藏分享切换为英文接收动态反馈在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。由于它是水平的,所以纵坐标并不重要,因此只要知道开始和结束的横坐标就足够了。开始坐标总是小于结束坐标。一支弓箭可以沿着 x 轴从不同点完全垂直地射出。在坐标 x 处射出一支箭,若有一个气球的直径的开始和结束坐标为 x``start,x``end, 且满足 xstart ≤ x ≤ x``end,则该气球会被引爆。可以射出的弓箭的数量没有限制。 弓箭一..

2022-01-31 10:44:01 72

原创 435.无重叠区间(贪心算法)

给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。注意:可以认为区间的终点总是大于它的起点。 区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。 示例 1:输入: [ [1,2], [2,3], [3,4], [1,3] ]输出: 1解释: 移除 [1,3] 后,剩下的区间没有重叠。 示例 2:输入: [ [1,2], [1,2], [1,2] ]输出: 2解释: 你需要移除两个 [1,2] 来使剩下的区间没有重叠。 示例 3:输..

2022-01-31 10:43:08 274

原创 300.最长递增子序列(动态规划)

题目给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。示例 1:输入:nums = [10,9,2,5,3,7,101,18] 输出:4 解释:最长递增子序列是 [2,3,7,101],因此长度为 4 。示例 2:输入:nums = [0,1,0,3,2,3] 输出:4示例 3:输入:nums = [7,7

2022-01-31 10:41:46 64

原创 219.存在重复数组(哈希表,滑动窗口,以及自创point类法)题目:

给你一个整数数组 nums 和一个整数 k ,判断数组中是否存在两个 不同的索引 i 和 j ,满足 nums[i] == nums[j] 且 abs(i - j) <= k 。如果存在,返回 true ;否则,返回 false 。示例 1:输入:nums = [1,2,3,1], k = 3输出:true示例 2:输入:nums = [1,0,1,1], k = 1输出:true示例 3:输入:nums = [1,2,3,1,2,3], k = 2输出:f..

2022-01-31 10:40:30 357

原创 122.买股票的最好时机II(贪心算法)

题目:给定一个数组 prices ,其中 prices[i] 是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: prices = [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 随后..

2022-01-31 10:39:12 95

原创 56.合并区间(贪心算法)

题目:难度中等1267收藏分享切换为英文接收动态反馈以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。示例 1:输入:intervals = [[1,3],[2,6],[8,10],[15,18]]输出:[[1,6],[8,10],[15,18]]解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6

2022-01-31 10:37:38 115

原创 55.跳跃游戏(贪心算法)

题目:55. 跳跃游戏难度中等1589收藏分享切换为英文接收动态反馈给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标。示例 1:输入:nums = [2,3,1,1,4]输出:true解释:可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。示例 2:输入:nums = [3,2,1,0,4]输出:false解释:无论怎

2022-01-31 10:36:42 2172

原创 42.跳跃问题II(贪心算法)

贪心算法

2022-01-31 10:35:20 360

原创 pytorch图像识别之手写字识别

一个简单的深度学习案例

2022-01-31 10:29:14 1702 1

原创 860柠檬水找零

题目在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。注意,一开始你手头没有任何零钱。给你一个整数数组 bills ,其中 bills[i] 是第 i 位顾客付的账。如果你能给每位顾客正确找零,返回 true ,否则返回 false 。示例 1:输入:bills = [5,5,5

2021-12-20 11:37:54 93

原创 455分发饼干(贪心算法)

解题思路利用贪心策略,给饥饿度最低的孩子分分配最小能饱腹的饼干。#include<iostream>#include<vector> #include<algorithm>using namespace std;//这里用来定义变量//显然题目给的饼干应该是从小到大 所以从后往前遍历 胃口值也是从小到大排序 //(利用alogrithm排序就好) vector<int> g={10,9,8,7};//表示饥饿度vector&lt

2021-12-16 00:15:06 1238

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除