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
leetcode动态规划
leetcode
题解整理---链表
leetcode
题解整理---链表本文记录
leetcode
网站中笔者认为优质的题解(持续更新)题号题目链接题解链接328奇偶链表题解
LeeYJ-cs
·
2025-04-05 22:06
Leetcode系列
leetcode
——239. 滑动窗口最大值
题目描述给定一个数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例:输入:nums=[1,3,-1,-3,5,3,6,7],和k=3输出:[3,3,5,5,6,7]解释:滑动窗口的位置最大值--------------------[13-1]-3536731[3-1-3]5367313
黑桃5200
·
2025-04-05 22:35
Leetcode
leetcode
239. 滑动窗口最大值
给你一个整数数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例1:输入:nums=[1,3,-1,-3,5,3,6,7],k=3输出:[3,3,5,5,6,7]解释:滑动窗口的位置最大值[13-1]-3536731[3-1-3]5367313[-1-35]367513-1[-353]6
The August
·
2025-04-05 22:35
leetcode
leetcode
算法
职场和发展
C++
数据结构
代码随想录
leetcode
-数据结构刷题笔记
文章目录一、数组1.1二分查找1.1.1二分查找1.1.2搜索插入位置1.1.3排序数组中查找元素第一和最后一个位置1.1.4x的平方根1.1.5有效的完全平方数1.2快慢指针1.2.1移除元素1.2.2删除有序数组中的重复项1.2.3移动01.2.4比较含退格的字符串1.2.5有序数组的平方1.3滑动窗口1.3.1长度最小的子数组1.3.2水果成篮1.3.3最小覆盖字串1.4螺旋矩阵二、链表2.
csdn_dzh
·
2025-04-05 22:35
leetcode
数据结构
笔记
LeetCode
——203. 移除链表元素 思路以及思考过程
在学校学习期间,链表的学习被我忽略了,从今天开始从0学习。classSolution{publicListNoderemoveElements(ListNodehead,intval){if(head.val==val){head=head.next;}for(inti=1;ListNode(i).next==null;i++){if(ListNode(i).next==val){ListNode
Jay_See
·
2025-04-05 21:05
leetcode
链表
算法
LeetCode
热题100记录-【链表】
链表160.相交链表思考:只要p1和p2不相等就一直在循环里,因为就算都为null也会走到相等记录:需要二刷publicclassSolution{publicListNodegetIntersectionNode(ListNodeheadA,ListNodeheadB){ListNodep1=headA,p2=headB;while(p1!=p2){if(p1==null){p1=headB;}
爪娃侠
·
2025-04-05 21:04
Leetcode刷题
leetcode
链表
算法
Leetcode
680 -- 双指针 | 贪心
题目描述验证回文串思路代码classSolution{public:boolpalindrome(string&s,inti,intj){for(;i=j;}boolvalidPalindrome(strings){inti=0,j=s.size()-1;for(;i
jyyyx的算法博客
·
2025-04-05 21:34
leetcode
算法
Needleman-Wunsch 算法(C++实现)
该算法是生物信息学中用于比较两个DNA、RNA或蛋白质序列的经典算法,通过
动态规划
找到最优的全局比对。问题描述给定两个生物序列seq1和seq2,如何找到它们的最优全局比对,使得比对得分最大化?
饕餮怪程序猿
·
2025-04-05 19:54
C++算法设计与实现
算法
c++
开发语言
动态规划
练习题③
2915.和为目标值的最长子序列的长度给你一个下标从0开始的整数数组nums和一个整数target。返回和为target的nums子序列中,子序列长度的最大值。如果不存在和为target的子序列,返回-1。子序列指的是从原数组中删除一些或者不删除任何元素后,剩余元素保持原来的顺序构成的数组。示例1:输入:nums=[1,2,3,4,5],target=9输出:3解释:总共有3个子序列的和为9:[4
noruta
·
2025-04-05 19:23
python
算法
动态规划
算法
python
力扣
洛谷 最大子段和 (
动态规划
入门问题)
题目描述给出一个长度为n的序列a,选出其中连续且非空的一段使得这段和最大。输入格式第一行是一个整数,表示序列的长度n。第二行有n个整数,第i个整数表示序列的第i个数字ai。输出格式输出一行一个整数表示答案。输入输出样例输入72-43-12-43输出4说明/提示样例1解释选取[3,5]子段{3,−1,2},其和为4。数据规模与约定对于40%的数据,保证n≤2×103。对于100%的数据,保证1≤n≤
自由随风飘
·
2025-04-05 19:21
算法练习
动态规划
算法
LeetCode
hot 100—分割回文串
题目给你一个字符串s,请你将s分割成一些子串,使每个子串都是回文串。返回s所有可能的分割方案。示例示例1:输入:s="aab"输出:[["a","a","b"],["aa","b"]]示例2:输入:s="a"输出:[["a"]]分析要将字符串s分割成一些子串,使得每个子串都是回文串,并返回所有可能的分割方案,可以使用回溯算法来解决这个问题。回溯算法通过递归的方式尝试所有可能的分割方案,同时利用动态
rigidwill666
·
2025-04-05 19:20
leetcode
leetcode
算法
职场和发展
数据结构
c++
LeetCode
算法题(Go语言实现)_23
题目给你一个下标从0开始、大小为nxn的整数矩阵grid,返回满足Ri行和Cj列相等的行列对(Ri,Cj)的数目。如果行和列以相同的顺序包含相同的元素(即相等的数组),则认为二者是相等的。一、代码实现funcequalPairs(grid[][]int)int{n:=len(grid)rowMap:=make(map[string]int)//统计每行的字符串出现次数for_,row:=range
LuckyLay
·
2025-04-05 18:42
算法
leetcode
golang
leetcode
刷题:数组-二分查找
704.二分查找-力扣(
LeetCode
)(
leetcode
-cn.com)intsearch(int*nums,intnumsSize,inttarget){intleft,right,middle;
qq_46333940
·
2025-04-05 13:42
leetcode
数组
二分查找
leetcode
394.字符串解码
classSolution{publicStringdecodeString(Strings){StackkStack=newStackstringBuilderStack=newStack<>();StringBuildercurrentStringBuilder=newStringBuilder();intk=0;for(charch:s.toCharArray()){if(Character
ゞ 正在缓冲99%…
·
2025-04-05 08:10
java
算法
leetcode
字符串
栈
LeetCode
75. 颜色分类
链接https://
leetcode
.cn/probl
fenjijue
·
2025-04-05 08:09
指针使用
leetcode
算法
指针
Leetcode
15 -- 双指针
题目描述三数之和思路参考先不考虑重复的问题。从暴力出发,我们需要使用三重循环,会超速。对于数组循环的优化问题,双指针很常用。双指针(又称为快慢指针)可以将一个二重循环优化为一重,因此我们可以用双指针优化。我们可以以此枚举每一个点作为第一个数,从后面寻找第二个和第三个数。关于去重:首先不管三七二十一,先排序!首先要知道,什么时候会发生重复!参考回溯中树层去重的例子,当一个集合的子集相同的时候,后面就
jyyyx的算法博客
·
2025-04-05 08:06
leetcode
算法
Leetcode
33 -- 二分查找 | 归约思想
题目描述搜索旋转排序数组二分的过程就是归约的过程思路来源一个重要的性质:源数组经过旋转之后,会划分为两个递增的数组,我们假设为aaa和bbb一个清晰的思路:这道题和平常二分法查找的不同就在于,把一个有序递增的数组分成了,两个递增的数组,我们需要做的就是判断这个数在哪一个递增的数组中,然后再去用常规的二分法去解决。一个假设:我们一般性的假设源数组被旋转为:[b1,b2,..bm,a1,a2,a3,.
jyyyx的算法博客
·
2025-04-05 08:05
leetcode
算法
【蓝桥杯】算法笔记2
这篇文章主要记录
动态规划
方面的学习。
动态规划
的核心思想:把大问题分解成小问题,记住小问题的解,避免重复计算。
是Winky啊
·
2025-04-05 07:01
#
蓝桥杯
蓝桥杯
算法
笔记
⭐算法OJ⭐字符串与数组【
动态规划
DP】(C++实现)最长公共子序列 LCS + 最短公共超序列 SCS
动态规划
(DynamicProgramming,DP)在字符串数组相关的算法题中应用广泛,尤其是在解决子序列、子串、编辑距离、匹配等问题时。
Vitalia
·
2025-04-05 05:20
算法OJ
算法
动态规划
c++
蓝桥杯常用算法介绍:
动态规划
(DP)
动态规划
是一种通过将复杂问题分解为重叠子问题,并记录子问题解来避免重复计算的方法。其核心是状态定义和状态转移方程。在竞赛中,DP常用于解决最优化问题(如最大值、最小值)或计数问题(如路径总数)。
启诚科技
·
2025-04-05 05:48
算法
蓝桥杯
动态规划
⭐算法OJ⭐寻找最短超串【
动态规划
+ 状态压缩】(C++ 实现)Find the Shortest Superstring
Givenanarrayofstringswords,returnthesmalleststringthatcontainseachstringinwordsasasubstring.Iftherearemultiplevalidstringsofthesmallestlength,returnanyofthem.Youmayassumethatnostringinwordsisasubstrin
Vitalia
·
2025-04-05 05:47
算法OJ
算法
c++
开发语言
动态规划
动态压缩
Leetcode
. 15.三数之和—2025字节最新面试题
给你一个整数数组nums,判断是否存在三元组[nums[i],nums[j],nums[k]]满足i!=j、i!=k且j!=k,同时还满足nums[i]+nums[j]+nums[k]==0。请你返回所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。示例1:输入:nums=[-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]解释:nums[0]+nums[1
程序员共鸣
·
2025-04-04 23:38
算法
LeetCode
hot 100—最长递增子序列
题目给你一个整数数组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,
rigidwill666
·
2025-04-04 22:33
leetcode
leetcode
算法
数据结构
c++
LeetCode
hot 100—数据流的中位数
题目中位数是有序整数列表中的中间值。如果列表的大小是偶数,则没有中间值,中位数是两个中间值的平均值。例如arr=[2,3,4]的中位数是3。例如arr=[2,3]的中位数是(2+3)/2=2.5。实现MedianFinder类:MedianFinder()初始化MedianFinder对象。voidaddNum(intnum)将数据流中的整数num添加到数据结构中。doublefindMedian
rigidwill666
·
2025-04-04 22:33
leetcode
leetcode
算法
职场和发展
c++
数据结构
动态规划
,如何应用
动态规划
解决实际问题?
一、
动态规划
核心概念
动态规划
是一种分阶段解决问题的数学方法,它将复杂问题分解为更小的子问题,通过存储子问题的解来避免重复计算。
程序员黄同学
·
2025-04-04 20:49
前端算法
前端开发
JavaScript
动态规划
算法
1.3 斐波那契数列模型:
LeetCode
746. 使用最小花费爬楼梯
动态规划
解最小花费爬楼梯问题:
LeetCode
746.使用最小花费爬楼梯1.题目链接
LeetCode
746.使用最小花费爬楼梯题目要求:给定一个整数数组cost,其中cost[i]是从楼梯第i阶向上爬所需支付的费用
熊峰峰
·
2025-04-04 09:32
#
1.2
leecode动态规划习题
leetcode
算法
动态规划
LeetCode
第62题_不同路径
LeetCode
第62题:不同路径题目描述一个机器人位于一个mxn网格的左上角(起始点在下图中标记为“Start”)。机器人每次只能向下或者向右移动一步。
@蓝莓果粒茶
·
2025-04-04 09:02
算法
leetcode
算法
职场和发展
数据结构
矩阵
c++
python
代码随想录Day30
Day30
动态规划
part0301背包问题二维题目描述小明是一位科学家,他需要参加一场重要的国际科学大会,以展示自己的最新研究成果。他需要带一些研究材料,但是他的行李箱空间有限。
好像也没那么热爱
·
2025-04-04 09:31
算法训练营
leetcode
java
代码随想录Day31
Day31
动态规划
part04
LeetCode
1049.最后一块石头的重量II题目描述有一堆石头,用整数数组stones表示。其中stones[i]表示第i块石头的重量。
好像也没那么热爱
·
2025-04-04 08:29
算法训练营
leetcode
java
【
LeetCode
热题100】 45. 跳跃游戏 II 的算法思路及python代码
45.跳跃游戏II给定一个长度为n的0索引整数数组nums。初始位置为nums[0]。每个元素nums[i]表示从索引i向后跳转的最大长度。换句话说,如果你在nums[i]处,你可以跳转到任意nums[i+j]处:0int:n=len(nums)maxPos,end,step=0,0,0#初始化最远位置、跳跃边界、跳跃次数foriinrange(n-1):#遍历到倒数第二个元素即可ifmaxPos
pljnb
·
2025-04-04 07:50
LeetCode热题100
算法
leetcode
游戏
【力扣刷题实战】颜色分类
力扣题目:颜色分类原题链接:75.颜色分类-力扣(
LeetCode
)题目描述给定一个包含红色、白色和蓝色、共n个元素
小卡皮巴拉
·
2025-04-04 04:02
leetcode
算法
c++
开发语言
双指针
【力扣刷题实战】长度最小的子数组
力扣题目:长度最小的子数组原题链接:209.长度最小的子数组-力扣(
LeetCode
)题目描述给定一个含有n
小卡皮巴拉
·
2025-04-04 04:02
力扣刷题实战
算法
leetcode
c++
开发语言
滑动窗口
数据结构与算法每日一练---链表---0x0000
数据结构与算法每日一练---链表---0x0000移除链表元素
LeetCode
题号:203所属类型:链表题目说明示例提示题解方法1:常规方法方法2:虚拟头节点方法3:采用C++STL库处理移除链表元素
LeetCode
LoveXming
·
2025-04-04 00:38
数据结构与算法
链表
数据结构
算法
c++
leetcode
739. 每日温度
来源:力扣(
LeetCode
)链接:https://
leetcode
-cn.com/problems/daily-temperatures著作权归领扣网络所有。
majinbo111
·
2025-04-04 00:05
LeetCode
C语言
数据结构与算法
leetcode
739
每日温度
【
leetcode
100】有效的括号
1、题目描述给定一个只包括'(',')','{','}','[',']'的字符串s,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。示例1:输入:s="()"输出:true示例2:输入:s="()[]{}"输出:true示例3:输入:s="(]"输出:false2、初始思路2.1思路对于左括号“([{“直
SsummerC
·
2025-04-04 00:34
leetcode100
python
leetcode
LeetCode
每日温度
输入:temperatures=[73,74,75,71,69,72,76,73]输出:[1,1,4,2,1,1,0,0]来源:
LeetCode
利用栈来找到每个元素比其大的元素,下标差就是
liyatjj
·
2025-04-04 00:34
LeetCode
Java
leetcode
算法
leetcode
hot100 每日温度
739.每日温度已解答中等相关标签相关企业提示给定一个整数数组temperatures,表示每天的温度,返回一个数组answer,其中answer[i]是指对于第i天,下一个更高温度出现在几天后。如果气温在这之后都不会升高,请在该位置用0来代替。单调栈类型的题目:找到一个数组里面左边比他大的数,左边比他小的数,右边比他大的数,右边比他小的数,这种类型的,都是用同一个模板。首先暴力求解,接着看看有神
chenziang1
·
2025-04-04 00:34
leetcode
算法
职场和发展
python-
leetcode
-每日温度
739.每日温度-力扣(
LeetCode
)classSolution:defdailyTemperatures(self,temperatures:List[int])->List[int]:n=len
Joyner2018
·
2025-04-03 23:03
python
leetcode
算法
职场和发展
Leetcode
.每日温度(JAVA)
classSolution{publicint[]dailyTemperatures(int[]temperatures){intn=temperatures.length;int[]ans=newint[n];inttop=0;int[]stack=newint[n+1];for(inti=n-1;i>=0;i--){inttemp=temperatures[i];while(top!=0&&t
樱花山下
·
2025-04-03 23:02
leetcode刷题
leetcode
java
算法
【
LeetCode
-java】复习专题(4):贪心算法[0804]
200804今天复习专题写的是贪心算法的122.买卖股票的最佳时机II、55.跳跃游戏JumpGame和134.加油站GasStation。文章目录4.贪心算法122.买卖股票的最佳时机IIBestTimetoBuyansSellStockII55.跳跃游戏JumpGame134.加油站GasStation4.贪心算法今天不讲太多太难的题了,就讲一下贪心算法。贪心算法还是很要有研究的。《算法导论》
招财猫qwq
·
2025-04-03 22:54
LeetCode
贪心算法
贪心算法学习心得
这一周我在
LeetCode
上做了很多贪心算法的题。简单总结了个人理解贪心算法的核心思想局部最优:不从整体上进行考虑,对于一个问题总是做出当前情况的最优解。这个核心思想使得贪心算法适用于无后效性的问题。
hizoo
·
2025-04-03 22:23
算法
贪心算法
leetcode
算法
leetcode
简单题21 N.104 二叉树的最大深度 rust描述
//[3,9,20,null,null,15,7]3//[1,null,2]2usestd::rc::Rc;usestd::cell::RefCell;//Definitionforabinarytreenode.#[derive(Debug,PartialEq,Eq)]pubstructTreeNode{pubval:i32,publeft:Option>>,pubright:Option>>,
独好紫罗兰
·
2025-04-03 11:15
leetcode
rust
算法
LeetCode
1456. 定长子串中元音的最大数目 | 滑动窗口超详细解析
目录问题描述什么是滑动窗口?为什么选择滑动窗口?分步思路解析完整代码实现与注释复杂度分析思考题与答案1.问题描述给定一个字符串s和一个整数k,要求找到所有长度为k的连续子字符串中,包含元音字母(a,e,i,o,u)的最大数量。例如:输入:s="abciiidef",k=3,输出:3(子字符串"iii"包含3个元音)。输入:s="rhythms",k=4,输出:0(字符串中没有元音)。2.什么是滑动
维维宝宝最可爱啦QWQ
·
2025-04-03 10:40
算法-滑动窗口(C++实现)
算法
LeetCode
第126题_单词接龙II
LeetCode
第126题:单词接龙II题目描述按字典wordList完成从单词beginWord到单词endWord转化,一个表示此过程的转换序列是形式上像beginWord->s1->s2->...
@蓝莓果粒茶
·
2025-04-03 09:03
算法
leetcode
算法
数据结构
c++
python
c#
unity
Leetcode
合集 -- 排列问题 | 递归
题目1子集2思路代码题目2全排列2思路代码题目3排列总和思路代码题目4排列总和2思路代码
jyyyx的算法博客
·
2025-04-03 09:30
leetcode
算法
LeetCode
94二叉树的中序遍历
原理二叉树的中序遍历遵循“左子树-根节点-右子树”的顺序来访问二叉树中的每个节点。其基本原理是利用递归的思想,先递归地遍历根节点的左子树,访问完左子树的所有节点后,再访问根节点本身,最后递归地遍历根节点的右子树,这样就能按照中序遍历的规则依次访问二叉树中的所有节点,并将节点的值存储起来,最终得到中序遍历的结果序列。步骤递归函数inorder的执行步骤(inorder函数部分)首先判断传入的当前节点
小王Jacky
·
2025-04-03 01:36
编程算法提高(c++)
算法
LeetCode
94. 二叉树的中序遍历Golang版
LeetCode
94.二叉树的中序遍历Golang版1.问题描述给定一个二叉树的根节点root,返回它的中序遍历。
皮卡猴
·
2025-04-03 01:35
leetcode刷题
leetcode
二叉树
中序遍历
算法
LeetCode
94. 二叉树的中序遍历
LeetCode
94.二叉树的中序遍历这是一道非常基础的模版题,因此就不放出题目描述及输入输出示例和数据范围了。
YGGP
·
2025-04-03 01:03
程序设计算法
leetcode
算法
动态规划
:完全背包问题----中专生刷算法
需要基础:闫氏dp分析法,01背包问题先去看一下01背包问题,再看完全背包
动态规划
:选择dp及优化01背包问题-CSDN博客做过01背包问题的同学会发现,完全背包问题的代码在01背包基础上改动很小,但是里面的思想
XYY369
·
2025-04-02 23:25
算法
动态规划
蓝桥杯
c++
学习
代码随想录算法训练营Day25|
LeetCode
134 加油站、135 分发糖果、860 柠檬水找零、406 根据身高重建队列
力扣134加油站笔试遇到过,不出意外的还是没写出来。代码很简单,但是逻辑不好想:从当前候选起点start开始累积gas[i]-cost[i],如果某一步累计和curr变成负值,就意味着从start到当前站点之间,任何中间点都不可能是有效的起点。如果所有站点的gas[i]-cost[i]总和(即total)大于等于0,那么从一个合适的候选起点出发一定能走完整个环。证明的核心是:假设从候选起点star
今天也要早睡早起
·
2025-04-02 22:16
数据结构与算法修炼
算法
leetcode
贪心算法
c++
数据结构
上一页
36
37
38
39
40
41
42
43
下一页
按字母分类:
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
其他