- 2024-10-31DAY49 ||1143.最长公共子序列| 1035.不相交的线 | 53. 最大子序和 |392.判断子序列
1143.最长公共子序列题目:1143.最长公共子序列-力扣(LeetCode)给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的
- 2024-10-15leetcode 刷题day42动态规划Part11(1143.最长公共子序列、1035.不相交的线、53. 最大子序和、392.判断子序列)
1143.最长公共子序列思路:718.最长重复子数组两个数组对应相同且连续,所以递推公式是dp[i-1][j-1]+1。最长公共子序列不要求连续但要求相对顺序,差别主要在于递推公式。对于该题主要有两大情况:text1[i-1]与text2[j-1]相同,text1[i-1]与text2[j-1]不相同。如果te
- 2024-10-02代码随想录算法训练营 | 贪心算法:455.分发饼干,376. 摆动序列,53. 最大子序和
455.分发饼干题目链接:455.分发饼干文档讲解︰代码随想录(programmercarl.com)视频讲解︰分发饼干日期:2024-10-02想法:大饼干喂大孩子Java代码如下:classSolution{publicintfindContentChildren(int[]g,int[]s){Arrays.sort(g);Arrays.sort(s);
- 2024-09-23Day 23 贪心算法part01| LeetCode 455.分发饼干,376.摆动序列,53.最大子序和
455.分发饼干455.分发饼干classSolution{publicintfindContentChildren(int[]g,int[]s){Arrays.sort(g);Arrays.sort(s);intindex=s.length-1;intcount=0;for(inti=g.le
- 2024-08-03代码随想录 day 44 最长公共子序列 | 不相交的线 | 最大子序和 | 判断子序列
最长公共子序列最长公共子序列解题思路本题dp数组的含义是最长公共序列,而后同时遍历两个字符串,遇到相同的字母是公共子序列+1,否则取两个字符串的公共子序列中较长的一个。知识点动态规划,子序列心得没有想到比较两个字符串的公共子序列。我自己是遇到相同字母时将所有后续的
- 2024-07-19代码随想录算法训练营第29天 | 贪心算法1:455.分发饼干、376.摆动序列、53.最大子序和
代码随想录算法训练营第29天|贪心算法1:455.分发饼干、376.摆动序列、53.最大子序和贪心算法基础理论https://programmercarl.com/贪心算法理论基础.html455.分发饼干https://leetcode.cn/problems/assign-cookies/description/代码随想录https://programmercarl.com/0455
- 2024-07-18代码随想录day28 分发饼干 | 摆动序列 | 最大子序和
分发饼干分发饼干解题思路用贪心算法,胃口最大的孩子就需要尺寸最大的饼干,如果没有符合条件的饼干则换胃口第二大的孩子,以此类推。局部最优就是全局最优。知识点贪心心得简单摆动序列摆动序列解题思路通过遍历整个数组找到峰值,峰值则是找到最长的子序列,局部最优就是全
- 2024-07-09Day 47 | 1143.最长公共子序列 、 53. 最大子序和
1143.最长公共子序列体会一下本题和718.最长重复子数组的区别视频讲解:https://www.bilibili.com/video/BV1ye4y1L7CQhttps://programmercarl.com/1143.最长公共子序列.html给定两个字符串text1和text2,返回这两个字符串的最长公共子序列的长度。一个字符串的子序列是
- 2024-06-18135. 最大子序和
//135.最大子序和dp.cpp:此文件包含"main"函数。程序执行将在此处开始并结束。//#include<iostream>#include<deque>usingnamespacestd;/*https://www.acwing.com/problem/content/137/输入一个长度为n的整数序列,从中找出一段长度不超过m的连续子序列
- 2024-04-1931天【代码随想录算法训练营34期】第八章 贪心算法 part01(● 理论基础 ● 455.分发饼干 ● 376. 摆动序列 ● 53. 最大子序和 )
贪心算法就是先选局部最优,再推全局最优没有套路将问题分解为若干个子问题找出适合的贪心策略求解每一个子问题的最优解将局部最优解堆叠成全局最优解●455.分发饼干classSolution:deffindContentChildren(self,g:List[int],s:List[int])->int:g.s
- 2024-04-06贪心算法|53.最大子序和
力扣题目链接classSolution{public:intmaxSubArray(vector<int>&nums){intresult=INT32_MIN;intcount=0;for(inti=0;i<nums.size();i++){count+=nums[i];if(count>result){
- 2024-03-29代码随想录训练营Day31:● 理论基础 ● 455.分发饼干 ● 376. 摆动序列 ● 53. 最大子序和
理论基础贪心基础455.分发饼干题目链接https://leetcode.cn/problems/assign-cookies/description/题目描述思路自己写的,因为没有事先对两个数组进行排序,所以出现了问题classSolution{publicintfindContentChildren(int[]g,int[]s){Arrays.s
- 2024-03-28(53/60)最长公共子序列、不相交的线、最大子序和
最长公共子序列leetcode:1143.最长公共子序列动态规划思路和最长重复子序列很像,但是这个不要求连续。意义略有不同,因此result不需要找最大值,直接就是最末的dp元素。代码实现classSolution{public:intlongestCommonSubsequence(stringtext1,stringtext2){
- 2024-03-21代码随想录算法训练营第五十三天| ● 1143.最长公共子序列 ● 1035.不相交的线 ● 53. 最大子序和 动态规划
最长公共子序列 题目链接:1143.最长公共子序列-力扣(LeetCode)思路:。classSolution{public:intlongestCommonSubsequence(stringtext1,stringtext2){vector<vector<int>>dp(text1.size()+1,vector<int>(text2.size()+1,0));for(inti
- 2024-02-28(31/60)贪心理论、分发饼干、摆动序列、最大子序和
贪心的一天,头好晕理论基础什么是贪心每次选择都采取局部最优,最终得到全局最优。(一定是每个阶段都采取局部最优,能够推出全局最优的,如果得不到全局最优就不用贪心法)套路没有套路。但是可以判断用不用贪心:通过数学归纳/反证法的方式,模拟一下看看能不能局部最优->整体最优。(
- 2023-09-21最大子序和问题
[HDU1003]MaxSum题意:给定你一个长度为$n$的序列$a_1,a_2,a_3,\cdot\cdot\cdota_n$,找出其中一段连续的子序列,使得这段子序列的和最大。思路:考虑DP,设$dp_i$:以$a_i$结尾的最大子序和,因为需要找连续的一段,所以$dp_i=max(dp_{i-1}+a_i,a
- 2023-09-20单调队列与最大子序和问题
HDU-1003-MaxSum题意:给定一个长度为$n$的序列$a_1,a_2,a_3,\cdot\cdot\cdota_n(-10^3\lea_i\le10^3,1\len\le10^5)$,找出其中一个和最大的连续子段,并输出最大的和、该子段的起始下标。思路一:DP设$f_i$:以$a_i$结尾的最大子序和。因为
- 2023-03-31代码随想录day 31 455.分发饼干 | 376. 摆动序列 | 53. 最大子序和
455.分发饼干假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干j,都有一个尺寸s[j] 。如果s[j] >=g[i],我们可以将这个饼干j分配给孩子i,这个孩
- 2023-03-14【LeetCode贪心#03】最大子序和
最大子序和力扣题目链接给你一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组是数组中的一个连续部分。示例1:输
- 2023-03-03 代码随想录算法训练营Day31 贪心算法| 理论基础 455.分发饼干 376. 摆动序列 53. 最大子序和
代码随想录算法训练营理论基础什么是贪心贪心的本质是选择每一阶段的局部最优,从而达到全局最优。每次拿最大的就是局部最优,最后拿走最大数额的钱就是推出全局最优。贪
- 2023-02-27最大子序和——单调队列+DP
输入一个长度为n的整数序列,从中找出一段长度不超过m的连续子序列,使得子序列中所有数的和最大。注意:子序列的长度至少是1。输入格式第一行输入两个整数n,m。第二
- 2023-02-24最大子序和
问题描述给你一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组是数组中的一个连续部分。解题思路我最开始做这道题的
- 2023-02-23算法刷题 Day 53 | ● 1143.最长公共子序列 ● 1035.不相交的线 ● 53. 最大子序和
1143.最长公共子序列体会一下本题和718.最长重复子数组的区别视频讲解:https://www.bilibili.com/video/BV1ye4y1L7CQhttps://programmercarl.com/1143.%E6%9C%8
- 2023-02-21leetcode 53. 最大子序和
classSolution{public:intmaxSubArray(vector<int>&nums){if(nums.size()==1){returnnums[0];}intsum=0;int
- 2023-02-21【算法训练营day53】LeetCode1143. 最长公共子序列 LeetCode1035. 不相交的线 LeetCode53. 最大子序和
LeetCode1143.最长公共子序列题目链接:1143.最长公共子序列独上高楼,望尽天涯路和之前那道题思路又不太一样了,第一次接触还是挺难想出来的。慕然回首,灯火阑珊处首先是