E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
动态规划-杨辉三角
C练习——
杨辉三角
题目:打印近似
杨辉三角
,行数n自选百度找的
杨辉三角
,参考一下:解析:把它的全部元素左对齐,就可以看成近似
杨辉三角
的样子111121133114641……每个数等于它上方两数之和每行数字左右对称,由1开始逐渐变大行数与列数相同
王小龙泽
·
2024-01-15 12:23
C练习题
c语言
AcWing 构造数组 区间合并
思路:这道题第一眼来看以为是
动态规划
类型的题目,然而尝试了用dp的方法做,然而超时了,过了差不多一半的测试店,显示的是超时。那么应该来说
动态规划
是可以做的,但数据卡的比较严。
江南路漫
·
2024-01-15 12:36
AcWing
算法
分割等和子集(java
动态规划
)
Problem:416.分割等和子集文章目录题目描述思路解题方法复杂度Code题目描述思路该题目可以归类为0-1背包问题,具体到细节可以再归纳为背包是否装满问题1.首先判断数组元素和的奇偶性(奇数则不能划分)2.我们定义一个二维布尔类型数组,用于记录每一阶段的可选状态3.针对于动态转移方程:我们要判断最终是否可以选取一些数使其和为原来数组元素和的一半,即通过一层一层的选择数(状态转移),判断最终状
LNsupermali
·
2024-01-15 12:03
力扣题目
leetcode
java
动态规划
三角形最小路径和(Java
动态规划
)
Problem:120.三角形最小路径和文章目录题目描述思路解题方法复杂度Code题目描述思路Problem:64.最小路径和本题目可以看作是在上述题目的基础上改编而来,具体的思路:1.记录一个int类型的大小的n乘nn乘nn乘n的数组(其中nnn为数组triangle的行数)用于记录每一个当前阶段的最小路径和2.大体上可以依据题意得出动态转移方程为dp[i][j]=Math.min(dp[i-1
LNsupermali
·
2024-01-15 12:03
力扣题目
leetcode
java
动态规划
珠宝的最高价值(java
动态规划
)
Problem:LCR166.珠宝的最高价值文章目录解题思路思路解题方法复杂度Code解题思路思路改题目与本站64题实质上是一样的,该题目在64题的基础上将求取最小路径和改成了求取最大路径和。具体实现思路如下:1.定义一个int类型的二维数组dp大小为给定矩阵frame的行数与列数。该数组用于记录每个当前阶段的最大路径和(也是本题目的最大价值)2.动态转移方程为**dp[i][j]=Math.ma
LNsupermali
·
2024-01-15 12:01
力扣题目
leetcode
java
动态规划
Day 45
动态规划
7
70.爬楼梯代码随想录1.思路不难看出,这道题是一个完全背包计数问题,因为是排列(131和113是两种),因此背包遍历在外循环,物品遍历在内循环。#include#includeusingnamespacestd;intmain(){intn,m;while(cin>>n>>m){vectordp(n+1,0);dp[0]=1;for(inti=1;i=0)dp[i]+=dp[i-j];}}cou
韩纪初
·
2024-01-15 10:36
算法
Day 46
动态规划
8
139.单词拆分代码随想录1.思路(1)对背包问题的转化这道题可以很简单的转化为,目标字符串为背包,物品为字典内元素,优化目标为是否可以进行拆分。但是怎么进行dp数组的构建,是一个比较困难的问题。遍历每个物品不太现实,因为每个物品都是字符串,不可比。因此,可以遍历位置,每次判断是否可以组成物品。这是一种化间断为连续的方法。(2)dp数组dp[i]代表该i长度可以拆分为很多单词(boolean)(3
韩纪初
·
2024-01-15 10:36
算法
数据结构
Day 44
动态规划
6
K52.完全背包代码随想录1.思路(1)dp数组定义以及更新模式完全背包和01背包的区别可以从展开的二维背包中看出来:01背包:dp[i][j]=max(dp[i-1][j],dp[i-1][j-weights[i-1]]+values[i-1])完全背包:dp[i][j]=max(dp[i-1][j],dp[i][j-weights[i-1]]+values[i-1])区别就在i-1上。在保持原
韩纪初
·
2024-01-15 10:36
动态规划
算法
上海计算机学会11月月赛 乙组题解
上海计算机学会11月月赛乙组题解本次比赛涉及算法:字符串、贪心、二分、思维、树形
动态规划
、乘法逆元、状态压缩、折半枚举。
超哥聊信奥
·
2024-01-15 09:48
上海计算机学会月赛题解
算法
c++
数据结构
动态规划
深度优先
广度优先
代码随想录-刷题第五十五天
动态规划
五步曲分析:dp[i][j]表示以下标i-1为结尾的字符串word1,和以下标j-1为结尾的字符串word2,最近编辑距离为dp[i][j]。
涛声依旧9087
·
2024-01-15 09:20
数据结构
算法
数据结构
java
leetcode
动态规划
代码随想录-刷题第五十四天
动态规划
五步曲:dp[i][j]表示以下标i-1为结尾的字符串s,和以下标j-1为结尾的字符串t,相同子序列的长度为dp[i][j]。注意这里是判断s是否为t的子序列。即t的长度是大于等于s的。
涛声依旧9087
·
2024-01-15 09:49
数据结构
数据结构
算法
java
leetcode
动态规划
周赛379(排序、分类讨论、记忆化搜索(
动态规划
))
文章目录周赛379[3000.对角线最长的矩形的面积](https://leetcode.cn/problems/maximum-area-of-longest-diagonal-rectangle/)排序[3001.捕获黑皇后需要的最少移动次数](https://leetcode.cn/problems/minimum-moves-to-capture-the-queen/)分类讨论[3002.
Miraclo_acc
·
2024-01-15 08:16
算法刷题记录
#
LC周赛
动态规划
算法
整数拆分:
动态规划
(c++)
leetcode343.整数拆分分析状态表示:·dp[i]表示整数i拆分乘积的最大值。转移方程:·对于每个数字i都进行一遍循环,计算(i-j)*j,(j<=i-1),并求其与dp[i],dp[i-j]*j的最大值,即:dp[i]=max(dp[i],(i-j)*j,dp[i-j]*j)·与dp[i-j]*j比较是因为i-j可能小于i-j拆分的乘积。边界:·输入的整数n大于等于2,考虑到会拆分成类似
joe_170d
·
2024-01-15 06:39
代码随想录刷题题Day33
1单词拆分139.单词拆分思路:
动态规划
法(1)确定dp数组以及下标的含义dp[i]:字符串长度为i的话,dp[i]为true,表示可以拆分为一个或多个在字典中出现的单词(2)递推公式如果确定dp[j]
Big David
·
2024-01-15 05:47
代码随想录刷题
代码随想录
C++
动态规划
多重背包
第 14 章 程序员常用算法
代码实现14.2分治算法14.2.1分治算法介绍14.2.2分治算法的基本步骤14.2.3分治(Divide-and-Conquer(P))算法设计模式如下:14.2.4分治算法最佳实践-汉诺塔14.3
动态规划
算法
黄土高坡上的独孤前辈
·
2024-01-15 04:23
机器学习与深度学习
算法
leetcode-2645 构造有效字符串的最小插入数
题目链接2645.构造有效字符串的最少插入数-力扣(LeetCode)解题思路
动态规划
1、定义状态d[i]为将前i个字符(为了方便编码,下标从1开始)拼凑成若干个abc所需要的最小插入数。
杜阿福
·
2024-01-15 03:56
leetcode
算法
职场和发展
5. 最长回文子串
【解题思路】不要多想,本题就用
动态规划
解决。既然是
动态规划
,那么就要考虑
动态规划
数组如何建立,一般我们都会建立一个二维数组用于存储
动态规划
的中间过程,而在这之前,要充分挖掘题目的规律。
五点钟科技
·
2024-01-15 02:15
一起来刷题
#
子串问题
算法
python
数据结构
动态规划
leetcode
刷题
如何用
动态规划
解决0-1背包问题(C语言实现)
对于一组不同重量、不可分割的物品,我们需要选择一些装入背包,在满足背包最大重量限制前提下,背包中物品总重量的最大值是多少?假设此时是5个物品,2,2,4,6,3,然后背包最大承载两是9.假如我们使用回溯算法解决该问题,代码如下intmaxW=0;//最大重量intn=5;//物品数目intw=9;//背包最大重量intweight[]={2,2,4,6,3};//物品重量,2,2,4,6,3voi
xuzhougeng
·
2024-01-15 02:53
代码随想录第第五十七天—回文子串,最长回文子序列
leetcode647.回文子串题目链接:回文子串版本一:
动态规划
dp数组及下标的含义dp[i][j]:区间范围[i,j](左闭右闭)的子串是否是回文子串,如果是dp[i][j]为true,否则为false
荒野饮冰室
·
2024-01-15 00:08
动态规划
数据结构
算法
【面试高频题】难度 3/5,可直接构造的序列 DP 题
Tag:「前缀和」、「构造」、「双指针」、「序列DP」、「
动态规划
」你有两个有序且数组内元素互不相同的数组nums1和nums2。
宫水三叶的刷题日记
·
2024-01-14 23:32
ZZULIOJ 1130:
杨辉三角
题目描述还记得中学时候学过的
杨辉三角
吗?
铁柱一号
·
2024-01-14 23:09
算法
c++
c语言
洛谷P1498南蛮图腾
然后跑去看题解,看别人怎么理解的题目,看完后明白了,原来是把第n-1个图腾分别向右和向上复制一下,得到的第n个图腾,明白了原理就简单多了思路:我的思路是暴力破解,用函数循环n-1遍得到第n个图腾(比不用那个
杨辉三角
取模做出来的大佬
一念错误终身
·
2024-01-14 18:47
【
动态规划
】63. 不同路径 II
链接:63.不同路径II-力扣(LeetCode)问题描述:解释:障碍物的位置对路径总数的贡献为0intuniquePathsWithObstacles(vector>&obstacleGrid){intm=obstacleGrid.size();intn=obstacleGrid[0].size();vector>dp(m,vector(n,0));for(inti=0;i
杨主任o_o
·
2024-01-14 17:41
动态规划
算法
代码随想录训练营Day43
动态规划
Part05|1049. 最后一块石头的重量 II|494. 目标和|474.一和零
1049.最后一块石头的重量II没有思路,不知道如何用背包问题解决Carl提示和416很像,也是将石头分为两组,只是416题要求两组价值完全一样,本题则是希望价值越大越好,越大越接近总值的一半,就会令两组的差距越小本题用的滚动一维dp数组,有很多要注意的细节:voidtest_1_wei_bag_problem(){vectorweight={1,3,4};vectorvalue={15,20,3
古德猫宁已存在
·
2024-01-14 16:53
动态规划
算法
数据结构
leetcode
c++
代码随想录算法训练营第43天 |
动态规划
part05 ● 1049. 最后一块石头的重量 II ● 494. 目标和 ● 474.一和零
#1049最后一块石头的重量II自己没想出来呜呜。我思考的时候以为是有特定顺序才行,然后回想一下背包问题好像不能解决顺序的,只能解决组合的,也就是每个东西有或者没有,然后我就觉得我想不出来了。这个时候我应该联想到背包问题只能解决组合的,所以这道题我那样想顺序的想法就是错的,要转变思路看了随想录学会了,自己写了:先用数学想一下n个(y-x)相加,即这些y之和-这些x之和=》分成重量尽可能接近的两堆=
weixin_51674457
·
2024-01-14 16:52
代码随想录一刷
动态规划
算法
leetcode
c++
Day43|
动态规划
part05: 1049. 最后一块石头的重量 II、494. 目标和、474. 一和零
1049.最后一块石头的重量IIleetcode链接:力扣题目链接视频链接:这个背包最多能装多少?LeetCode:1049.最后一块石头的重量II有一堆石头,用整数数组stones表示。其中stones[i]表示第i块石头的重量。每一回合,从中选出任意两块石头,然后将它们一起粉碎。假设石头的重量分别为x和y,且x=stones[i];j--){dp[j]=max(dp[j],dp[j-stone
QHG7C0
·
2024-01-14 16:22
数据结构与算法(一刷)
动态规划
算法
算法训练第四十三天|1049. 最后一块石头的重量 II 、494. 目标和、474.一和零
动态规划
part051049.最后一块石头的重量II题目描述思路总结494.目标和题目描述思路回溯算法
动态规划
总结474.一和零题目描述思路总结1049.最后一块石头的重量II题目链接:1049.最后一块石头的重量
凌锋lin6
·
2024-01-14 16:22
算法
leetcode
动态规划
c++
数据结构
代码随想录算法训练营第四十三天|1049. 最后一块石头的重量 II、494. 目标和、474. 一和零
第九章
动态规划
part051049.最后一块石头的重量II有一堆石头,用整数数组stones表示。其中stones[i]表示第i块石头的重量。每一回合,从中选出任意两块石头,然后将它们一起粉碎。
Keponcod
·
2024-01-14 16:20
算法
动态规划
leetcode
第九章
动态规划
part05 1049. 最后一块石头的重量II 494. 目标和 474. 一和零
第四十三天|第九章
动态规划
part051049.最后一块石头的重量II494.目标和474.一和零一、1049.最后一块石头的重量II题目链接:https://leetcode.cn/problems/
旧日ζั͡ޓއއއ昔年
·
2024-01-14 16:50
动态规划
算法
代码随想录|day43|
动态规划
part05---------● 1049. 最后一块石头的重量 II ● 494. 目标和 ● 474.一和零
总链接:第九章
动态规划
part051049.最后一块石头的重量II链接:代码随想录本题就和昨天的416.分割等和子集很像了,可以尝试先自己思考做一做。自己的答案,看着视频后做出来了,没有细看视频。
isabelightL
·
2024-01-14 16:49
代码随想录
动态规划
算法
代码随想录算法训练营第46天|
动态规划
part04|1049. 最后一块石头的重量 II、494. 目标和 、 474.一和零
代码随想录算法训练营第46天|
动态规划
part04|1049.最后一块石头的重量II、494.目标和、474.一和零1049.最后一块石头的重量II1049.最后一块石头的重量II代码随想录思路:本题其实就是尽量让石头分成重量相同的两堆
gengjiahao
·
2024-01-14 16:49
算法
动态规划
代码随想录训练营Day42
动态规划
part05● 1049. 最后一块石头的重量 II ● 494. 目标和 ● 474.一和零
1049.最后一块石头的重量II题目链接:1049.最后一块石头的重量II-力扣(LeetCode)文章链接:代码随想录(programmercarl.com)视频链接:这个背包最多能装多少?LeetCode:1049.最后一块石头的重量II这道题其实也是个背包问题,不过要稍微动一动脑筋。怎样使剩下的石头最小?我们可以把这一堆石头尽量分成重量相近的两堆,那只要这两堆相减,就得到了最小的石头了。这样
搁浅~~
·
2024-01-14 16:49
动态规划
算法
leetcode
c++
数据结构
代码随想录算法训练营第四十三天 |
动态规划
part 5 | 1049. 最后一块石头的重量 II、494. 目标和、474.一和零
目录1049.最后一块石头的重量II思路代码494.目标和思路代码474.一和零思路代码1049.最后一块石头的重量IILeetcode思路本题尽量让石头分成重量相同的两堆,相撞之后剩下的石头最小,这样就化解成01背包问题了。所以本题和416.分割等和子集几乎一样。不同的地方在于,想要得到最后剩下的石头的重量,returnsum(stones)-dp[target]*2代码dp数组是True或者F
enzoherewj
·
2024-01-14 16:48
代码随想录算法训练营
算法
动态规划
leetcode
python
代码随想录算法训练营第43天 |
动态规划
part05:1049. 最后一块石头的重量 II、494. 目标和、474.一和零。
1049.最后一块石头的重量II本题就和昨天的416.分割等和子集很像了,可以尝试先自己思考做一做。代码随想录494.目标和大家重点理解递推公式:dp[j]+=dp[j-nums[i]],这个公式后面的提问我们还会用到。代码随想录474.一和零通过这道题目,大家先粗略了解,01背包,完全背包,多重背包的区别,不过不用细扣,因为后面对于完全背包,多重背包还有单独讲解。
Xjy xxxpy
·
2024-01-14 16:48
代码随想录
一刷
算法
动态规划
动态规划
part5 | ● 1049. 最后一块石头的重量 II ● 494. 目标和 ● 474.一和零
文章目录1049.最后一块石头的重量II思路思路代码官方题解困难494.目标和思路思路代码困难474.一和零思路思路代码困难今日收获1049.最后一块石头的重量II1049.最后一块石头的重量II思路和分割等和子集一样,除2作为背包容量。思路代码funclastStoneWeightII(stones[]int)int{sum:=0for_,v:=rangestones{sum+=v}target
Trueno.86
·
2024-01-14 16:48
算法题
动态规划
算法
leetcode
代码随想录算法训练营第四十三天|
动态规划
part05|1049. 最后一块石头的重量 II ● 494. 目标和 ● 474.一和零
1049.最后一块石头的重量IILastStoneWeightII-LeetCodedp[j]背量j最大价dp[j]最大重量dp[j]dp[j]=max(dp[j],dp[j-stones[i]]+stones[i]dp[0]=0;for(inti=0;i=stones[i];j--)//背包容量打印dp数组classSolution{publicintlastStoneWeightII(int[
2301_78266314
·
2024-01-14 16:17
代码随想录算法训练营
算法
动态规划
动态规划
part04 416. 分割等和子集
|
动态规划
经典问题|数据结构与算法_哔哩哔哩_bilibili01背包问题一维代码随想录视频讲解:带你学透01背包问题(滚动数组篇)|从此对背包问题不再迷茫!
sofia0119
·
2024-01-14 16:47
动态规划
算法
【位运算】【二分查找】【C++算法】100160价值和小于等于 K 的最大数字
作者推荐【
动态规划
】【字符串】扰乱字符串本文涉及的基础知识点二分查找算法合集位运算LeetCode100160.价值和小于等于K的最大数字给你一个整数k和一个整数x。
闻缺陷则喜何志丹
·
2024-01-14 15:38
#
算法题
c++
算法
leetcode
位运算
二分查找
价值和
最大数字
02二位数组算法
1.
杨辉三角
算法思想:a[i][j]=a[i-1][j]+a[i-1][j-1];代码:#includeusingnamespacestd;constintN=1e2+10;inta[N][N];intmain
pointers_syc
·
2024-01-14 13:27
蓝桥杯算法
算法
c++
数据结构
构造有效字符串的最小插入数(
动态规划
贪心 滚动数组优化 C++ Go)
题目链接题意给你一个字符串word,你可以向其中任何位置插入“a”、“b”或“c”任意次,返回使word有效需要插入的最少字母数。如果字符串可以由“abc”串联多次得到,则认为该字符串有效。提示:1word[i-1],需要插入的字符数就是-1,即前面可以少插入一个字符,转移方程为dp[i]=min(dp[i],dp[i-1]-1)贪心的考虑,每个字符都优先跟前面的字符去组合,而且dp[i-1]+2
豆沙睡不醒
·
2024-01-14 10:55
力扣
leetcode
动态规划
c++
LeetCode刷题--- 按摩师
博客个人专栏力扣递归算法题http://t.csdnimg.cn/yUl2I【C++】http://t.csdnimg.cn/6AbpV数据结构与算法http://t.csdnimg.cn/hKh2l前言:这个专栏主要讲述
动态规划
算法
元清加油
·
2024-01-14 10:51
力扣动态规划算法题
leetcode
算法
LeetCode刷题--- 地下城游戏
博客个人专栏力扣递归算法题http://t.csdnimg.cn/yUl2I【C++】http://t.csdnimg.cn/6AbpV数据结构与算法http://t.csdnimg.cn/hKh2l前言:这个专栏主要讲述
动态规划
算法
元清加油
·
2024-01-14 10:21
力扣动态规划算法题
leetcode
游戏
算法
LeetCode刷题--- 删除并获得点数
博客个人专栏力扣递归算法题http://t.csdnimg.cn/yUl2I【C++】http://t.csdnimg.cn/6AbpV数据结构与算法http://t.csdnimg.cn/hKh2l前言:这个专栏主要讲述
动态规划
算法
元清加油
·
2024-01-14 10:47
力扣动态规划算法题
leetcode
算法
动态规划
篇-01:爬楼梯
一般来说
动态规划
会有三种解法:暴力解法、使用了备忘录自上而下的递归解法、使用了数组的自下而上的迭代解法。
爬楼梯的猫
·
2024-01-14 10:32
手把手带你刷力扣Hot100
动态规划
算法
动态规划
篇-00:解题思想与框架
在这篇文章中,我将总结我对于
动态规划
的认识与解题框架。这些思想和框架将会在后面的习题中反复出现。
爬楼梯的猫
·
2024-01-14 10:02
手把手带你刷力扣Hot100
动态规划
算法
动态规划
篇-02:
杨辉三角
118、
杨辉三角
状态转移方程我们还是老套路起手:先列出状态转移方程。
爬楼梯的猫
·
2024-01-14 10:30
动态规划
算法
乘积最大子数组 暴力 滑动窗口改进
动态规划
给你一个整数数组nums,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。示例1:输入:[2,3,-2,4]输出:6解释:子数组[2,3]有最大乘积6。示例2:输入:[-2,0,-1]输出:0解释:结果不能为2,因为[-2,-1]不是子数组。#defineMAX(a,b)((a)>(b)?(a):(b))#defineMIN(a,b)((a)max)m
崔凯จุ๊บ
·
2024-01-14 09:00
leetcode
leetcode
动态规划
算法
指针
leetcode----152.乘积最大子数组(
动态规划
,两个状态数组)
152.乘积最大子数组问题:给你一个整数数组nums,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。我首先使用暴力枚举做的,后面实在没有思路,参考官方题解,自己总结一下。思路:定义dp[i]为以第i个元素结尾的最大子数组的乘积。若给定数组nums中的所有元素都非负,则有dp[i]=max{dp[i-1]*a_i,dp[i]},但是由于给定数组中有负数
小火车Thomasc
·
2024-01-14 09:29
#
leetcode
leetcode
动态规划
算法
动态规划
-leetcode#152-乘积最大子数组
classSolution{public:intmaxProduct(vector&nums){if(nums.empty())return0;longmax_res=INT_MIN;for(inti=0;i=0;j--){tmp*=nums[j];if(tmp>one)one=tmp;}max_res=max(max_res,one);}returnmax_res;}};先写了一个最挫的,找出i
沙扬娜拉的裙裾
·
2024-01-14 09:59
动态规划DP
leetcode
LeetCode第 152 题:乘积最大子数组(C++)
152.乘积最大子数组-力扣(LeetCode)要求是连续的子数组,
动态规划
但是要考虑负数的情况,所以需要维护当前最大值,最小值。
zj134_
·
2024-01-14 09:26
leetcode
leetcode
上一页
21
22
23
24
25
26
27
28
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他