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
:21. 合并两个有序链表
题目链接21.合并两个有序链表-力扣(
LeetCode
)题目描述为什么可以用递归递归=人脑+计算机递归结构递归是人脑借助计算机递归结构去解决问题人脑发现问题具有递归结构,于是借助计算机递归结构去解决问题所以递归算法脱离计算机之后根本不存在我们采用递归算法把问题解出来
呆呆的小鳄鱼
·
2025-06-23 12:47
#
递归
leetcode
链表
算法
leetcode
:129. 求根节点到叶节点数字之和
题目链接129.求根节点到叶节点数字之和-力扣(
LeetCode
)题目描述解法1:深搜/***Definitionforabinarytreenode.
呆呆的小鳄鱼
·
2025-06-23 12:47
#
递归
#
深搜
leetcode
算法
职场和发展
leetcode
:面试题 08.01. 三步问题
题目链接面试题08.01.三步问题-力扣(
LeetCode
)题目描述解法一:intwaysToStep(intn){//dp[i]--->爬到第i阶楼梯的最大方式//dp[i]=dp[i-1]+dp[i
呆呆的小鳄鱼
·
2025-06-23 12:47
#
递归
#
动态规划
leetcode
算法
职场和发展
动态规划40(
Leetcode
2140解决智力问题)
代码:classSolution{publiclongmostPoints(int[][]questions){intn=questions.length;long[]dp=newlong[n+1];for(inti=n-1;i>=0;i--){intj=Math.min(n,i+questions[i][1]+1);dp[i]=Math.max(dp[i+1],questions[i][0]+d
从月亮走向月亮7
·
2025-06-23 12:46
动态规划
算法
leetcode
2140. 解决智力问题
给你一个下标从0开始的二维整数数组questions,其中questions[i]=[pointsi,brainpoweri]。这个数组表示一场考试里的一系列题目,你需要按顺序(也就是从问题0开始依次解决),针对每个问题选择解决或者跳过操作。解决问题i将让你获得pointsi的分数,但是你将无法解决接下来的brainpoweri个问题(即只能跳过接下来的brainpoweri个问题)。如果你跳过问
程序行
·
2025-06-23 12:44
算法
数据结构
LeetCode
剑指offer算法备战春招-合并两个排序的链表
剑指Offer25.合并两个排序的链表输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。示例1:输入:1->2->4,1->3->4输出:1->1->2->3->4->4限制:0l2.val){list.next=l2;//l2大先接上l2=l2.next;//l2往后走}else{list.next=l1;l1=l1.next;}list=list.next;//新链表继
wangshuo(24考研上岸版)
·
2025-06-23 11:42
leetcode
算法
职场和发展
LeetCode
1208. 尽可能使字符串相等
题目链接1208.尽可能使字符串相等题目描述给你两个长度相同的字符串s和t,以及一个整数maxCost。你可以将s中的第i个字符变成t中的第i个字符,每次操作的代价为|s[i]-t[i]|(即两个字符的ASCII码差值的绝对值)。请你返回使s的子串与t的对应子串相等的最大长度。这里的子串是连续的字符序列。示例输入:s="abcd",t="bcdf",maxCost=3输出:3解释:从索引0到2的子
·
2025-06-23 10:33
滑动窗口python
LeetCode
3090. 每个字符最多出现两次的最长子字符串
题目链接https://
leetcode
.cn/problems/maximum-length-substring-with-two-occurrences/题目描述给定一个字符串s,找出满足每个字符最多出现两次的最长子字符串
·
2025-06-23 10:03
滑动窗口python
LeetCode
经典算法题:打家劫舍java详解
LeetCode
经典算法题:打家劫舍java详解
LeetCode
经典算法题:打家劫舍题目描述解题思路与代码如果房子首尾相连:预测赢家题目描述解题思路与代码动态规划:使用二维数组存储差值省份数量题目描述解题思路与代码解法一
yinying293
·
2025-06-23 08:53
算法
java
leetcode
LeetCode
题解——198. 打家劫舍
题目相关题目链接
LeetCode
中国,https://
leetcode
-cn.com/problems/house-robber/。题目描述你是一个专业的小偷,计划偷窃沿街的房屋。
努力的老周
·
2025-06-23 08:50
OJ题解
#
LeetCode题解
#
动态规划
LeetCode题解
动态规划
198.
打家劫舍
时间序列动态规划
【
LeetCode
#第198题】打家劫舍(一维dp)
198.打家劫舍-力扣(
LeetCode
)你是一个专业的小偷,计划偷窃沿街的房屋。
玉~你还好吗
·
2025-06-23 08:18
leetcode
算法
Swift 解锁数组可修改场景:
LeetCode
307 高效解法全解析
LeetCode
第307题正是针对这种“可修改+可查询”场景设计的,它要求你设计一个数据结构支持快速更新数组中的某个位置,同
网罗开发
·
2025-06-23 05:00
Swift
swift
leetcode
开发语言
【
LeetCode
热题 100】53.最大子数组和详解(Kadane算法)图解 + 动态规划思路解析
原题链接:53.最大子数组和一、题目描述给定一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入:nums=[-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组[4,-1,2,1]的和最大,为6。二、思路解析:Kadane算法(动态规划)本题目标:找到一个“连续的子数组”,使得它的和最大。
未名编程
·
2025-06-23 04:24
LeetCode热题100详解
算法
leetcode
动态规划
【
LeetCode
#第228题】汇总区间(简单题)
228.汇总区间-力扣(
LeetCode
)给定一个无重复元素的有序整数数组nums。区间[a,b]是从a到b(包含)的所有整数的集合。返回恰好覆盖数组中所有数字的最小有序区间范围列表。
玉~你还好吗
·
2025-06-23 02:09
leetcode
算法
【LC#392&&70】判断子序列&&爬楼梯(dp算法 第一期)
392.判断子序列-力扣(
LeetCode
)给定字符串s和t,判断s是否为t的子序列。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。
·
2025-06-23 02:09
【动态规划】
LeetCode
#213 打家劫舍 II(空间复杂度 O(1))
题目链接:
LeetCode
#213打家劫舍II题目描述:#213.打家劫舍II你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。
Code_Yilia
·
2025-06-23 02:39
动态规划
LeetCode
java
动态规划
leetcode
算法
【
LeetCode
】1247. 交换字符使得字符串相同
1247.交换字符使得字符串相同题目描述有两个长度相同的字符串s1和s2,且它们其中只含有字符“x”和“y”,你需要通过「交换字符」的方式使这两个字符串相同。每次「交换字符」的时候,你都可以在两个字符串中各选一个字符进行交换。交换只能发生在两个不同的字符串之间,绝对不能发生在同一个字符串内部。也就是说,我们可以交换s1[i]和s2[j],但不能交换s1[i]和s1[j]。最后,请你返回使s1和s2
Schanappi
·
2025-06-22 17:11
LeetCode刷题
leetcode
算法
数据结构
0编辑距离中等
LeetCode
583. 两个字符串的删除操作
583.两个字符串的删除操作描述给定两个单词word1和word2,找到使得word1和word2相同所需的最小步数,每步可以删除任意一个字符串中的一个字符。分析dp[i][j]dp[i][j]表示以i-1为结尾的字符串word1,和以j-1为结尾的字符串word2,想要达到相等,所需要删除元素的最少次数。动态转移方程word1.charAt(i-1)等于word2.charAt(j-1):dp[
18阿鲁
·
2025-06-22 17:41
动态规划
每日
leetcode
704.二分查找-力扣(
LeetCode
)题目给定一个n个元素有序的(升序)整型数组nums和一个目标值target,写一个函数搜索nums中的target,如果target存在返回下标,否则返回-1。
XiaoyaoCarter
·
2025-06-22 17:08
leetcode训练
leetcode
算法
职场和发展
c++
二分查找
leetcode
332.重新安排行程:优先队列与DFS实现欧拉路径的行程规划
一、题目深度解析与行程规划本质题目描述给定一个机票的字符串二维数组tickets,每个元素是[from,to]的形式,表示从from到to的机票。要求找出从JFK出发的行程,且必须使用所有机票,若存在多种可能的行程,返回字典序最小的那个。核心特性分析图论模型:每个机场是图的节点,机票是图的边,问题转化为在图中寻找一条经过所有边的路径欧拉路径:题目本质是寻找图中的欧拉路径(经过每条边恰好一次的路径)
Musennn
·
2025-06-22 17:08
leetcode刷题详解
深度优先
算法
leetcode
java
每日
leetcode
153.寻找旋转排序数组中的最小值-力扣(
LeetCode
)题目已知一个长度为n的数组,预先按照升序排列,经由1到n次旋转后,得到输入数组。
·
2025-06-22 14:17
(
LeetCode
) 169. 多数元素(哈希表 || 二分查找)
题目:169.多数元素方法一:二分法,最坏的时间复杂度0(nlogn),但平均0(n)即可。空间复杂度为0(1)。C++版本:intn=nums.size();intl=0,r=n-1;while(ln/2)break;elsel=mid+1;}returnnums[(l+r)/2];JAVA版本:classSolution{publicintmajorityElement(int[]nums){
岁忧
·
2025-06-22 08:44
LeetCode
LeetCode
面试经典
150
题
C++
JAVA
Go版本
leetcode
散列表
算法
java
c++
go
从“信息茧房”到“内容生态”:一个算法解救了我的推荐系统(3085. 成为 K 特殊字符串需要删除的最少字符数)
今天想和大家聊聊一个我最近在项目中遇到的“甜蜜的烦恼”,以及我是如何从一个看似不相关的
LeetCode
算法题中找到灵感,并最终完美解决问题的。我遇到了什么问题?
满分观察网友z
·
2025-06-22 00:20
算法解构与应用
算法
数据库
day 48 第十章 单调栈part01 739. 每日温度 49503.下一个更大元素II 6.下一个更大元素 I
任务日期:7.23题目一链接:739.每日温度-力扣(
LeetCode
)思路:通常是一维数组,要寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置,此时我们就要想到可以用单调栈了。
ZKang_不会过人
·
2025-06-21 14:43
算法
代码随想录算法训练营第38天 | 322. 零钱兑换 279.完全平方数 139.单词拆分 背包问题总结
|
LeetCode
:322.零钱兑换_哔哩哔哩_bilibili代码随想录classSolution{publicintcoinChange(int[]
ohnoooo9
·
2025-06-21 13:10
代码随想录算法训练营打卡
算法
代码随想录算法训练营第三十八天 | 322.零钱兑换 279.完全平方数 139.单词拆分
322.零钱兑换题目链接:322.零钱兑换-力扣(
LeetCode
)文章讲解:代码随想录视频讲解:动态规划之完全背包,装满背包最少的物品件数是多少?
m0_50413530
·
2025-06-21 13:09
算法
代码随想录算法训练营第38天| 322. 零钱兑换、279.完全平方数、139.单词拆分
模板:今日学习的文章链接和视频链接自己看到题目的第一想法看完代码随想录之后的想法自己实现过程中遇到哪些困难今日收获,记录一下自己的学习时长322.零钱兑换题目链接:322.零钱兑换-力扣(
LeetCode
扛过今天777
·
2025-06-21 13:06
算法
代码随想录算法训练营第38天 | 322. 零钱兑换、279.完全平方数、139.单词拆分
-力扣(
LeetCode
)funccoinChange(coins[]int,amountint)int{ifamount==0{return0}dp:=make([]int,amount+1)forj
百卷-星河
·
2025-06-21 13:06
算法
leetcode
--接雨水(双指针法,动态规划,单调栈)
目录方法一:双指针法方法二:动态规划方法三:单调栈42.接雨水-力扣(
LeetCode
)黑色的是柱子,蓝色的是雨水,我们先来观察一下雨水的分布情况:雨水落在凹槽之间,在一个凹槽的左右都会有两个柱子,两个柱子高度可能相同也可能不同
みずいろ
·
2025-06-21 06:51
算法
leetcode
算法
数据结构
c++
c语言
c++数据结构 有效的数独、矩阵置零
36.有效的数独-力扣(
LeetCode
)(
leetcode
-cn.com)classSolution{public:boolisValidSudoku(vector>&board){introw[9]
艾艾的博客
·
2025-06-20 12:54
c++
数据结构
矩阵
HOT 100 | 189.轮转数组、238. 除自身以外数组的乘积、41. 缺失的第一个正数
一、189.轮转数组189.轮转数组-力扣(
LeetCode
)1.解题思路1.由于k可能很大,为了防止多次重复挪动,所以只需要对其取余,就是最终挪动的位置。
Accept17
·
2025-06-20 12:22
python
算法
leetcode
LeetCode
-73. 矩阵置零-C++
给定一个mxn的矩阵,如果一个元素为0,则将其所在行和列的所有元素都设为0。请使用原地算法。示例1:输入:matrix=[[1,1,1],[1,0,1],[1,1,1]]输出:[[1,0,1],[0,0,0],[1,0,1]]示例2:输入:matrix=[[0,1,2,0],[3,4,5,2],[1,3,1,5]]输出:[[0,0,0,0],[0,4,5,0],[0,3,1,0]]代码实现,带详细
工程欣欣
·
2025-06-20 12:20
LeetCode每日一题
leetcode
矩阵
c++
数组中等
LeetCode
6091. 划分数组使最大差为 K
6091.划分数组使最大差为K描述给你一个整数数组nums和一个整数k。你可以将nums划分成一个或多个子序列,使nums中的每个元素都恰好出现在一个子序列中。在满足每个子序列中最大值和最小值之间的差值最多为k的前提下,返回需要划分的最少子序列数目。子序列本质是一个序列,可以通过删除另一个序列中的某些元素(或者不删除)但不改变剩下元素的顺序得到。classSolution{publicintpar
18阿鲁
·
2025-06-20 11:49
leetcode
排序算法
算法
LeetCode
2875.无线数组的最短子数组
给你一个下标从0开始的数组nums和一个整数target。下标从0开始的数组infinite_nums是通过无限地将nums的元素追加到自己之后生成的。请你从infinite_nums中找出满足元素和等于target的最短子数组,并返回该子数组的长度。如果不存在满足条件的子数组,返回-1。示例1:输入:nums=[1,2,3],target=5输出:2解释:在这个例子中infinite_nums=
吃着火锅x唱着歌
·
2025-06-20 11:18
LeetCode
leetcode
算法
数据结构
【经典算法】
LeetCode
215. 数组中的第K个最大元素(Java/C/Python3实现含注释说明,Medium)
个人主页:进朱者赤阿里非典型程序员一枚,记录平平无奇程序员在大厂的打怪升级之路。一起学习Java、大数据、数据结构算法(公众号同名)目录题目描述思路及实现方式一:快速选择排序思路代码实现Java版本C语言版本Python3版本复杂度分析方式二:最小堆(最小优先队列)思路代码实现Java版本C语言版本Python3版本复杂度分析总结相似题目标签(题目类型):数组题目描述给定整数数组nums和整数k,
进朱者赤
·
2025-06-20 11:17
#
面试
#
经典算法
算法
leetcode
数组中的第K个最大元素
数组查找
【
LeetCode
】912. 排序数组(中等)
912.排序数组给你一个整数数组nums,请你将该数组升序排列。示例1:输入:nums=[5,2,3,1]输出:[1,2,3,5]示例2:输入:nums=[5,1,1,2,0,0]输出:[0,0,1,1,2,5]提示:1arr[j+1]){swap(arr,j,j+1);}}}}//i和j是一个位置的话,会出错publicvoidswap(int[]arr,inti,intj){arr[i]=ar
晴雪月乔
·
2025-06-20 11:47
#
LeetCode
数组
leetcode
排序算法
【贪心算法】
Leetcode
763. 划分字母区间【中等】
划分字母区间给你一个字符串s。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是s。返回一个表示每个字符串片段的长度的列表。示例1:输入:s=“ababcbacadefegdehijhklij”输出:[9,7,8]解释:划分结果为“ababcbaca”、“defegde”、“hijhklij”。每个字母最多出现
FLGB
·
2025-06-20 11:15
算法
贪心算法
leetcode
算法
leetcode
3443. K 次修改后的最大曼哈顿距离 中等
给你一个由字符'N'、'S'、'E'和'W'组成的字符串s,其中s[i]表示在无限网格中的移动操作:'N':向北移动1个单位。'S':向南移动1个单位。'E':向东移动1个单位。'W':向西移动1个单位。初始时,你位于原点(0,0)。你最多可以修改k个字符为任意四个方向之一。请找出在按顺序执行所有移动操作过程中的任意时刻,所能达到的离原点的最大曼哈顿距离。曼哈顿距离定义为两个坐标点(xi,yi)和
圣保罗的大教堂
·
2025-06-20 11:15
模拟
leetcode
leetcode
leetcode
2294. 划分数组使最大差为 K 中等
给你一个整数数组nums和一个整数k。你可以将nums划分成一个或多个子序列,使nums中的每个元素都恰好出现在一个子序列中。在满足每个子序列中最大值和最小值之间的差值最多为k的前提下,返回需要划分的最少子序列数目。子序列本质是一个序列,可以通过删除另一个序列中的某些元素(或者不删除)但不改变剩下元素的顺序得到。示例1:输入:nums=[3,6,1,2,5],k=2输出:2解释:可以将nums划分
·
2025-06-20 11:44
C++二分查找
2.二分查找2.1704.二分查找-力扣(
LeetCode
)给定一个n个元素有序的(升序)整型数组nums和一个目标值t
乾坤未定的黑马
·
2025-06-20 04:24
C++
c++
开发语言
算法
二分查找
【
Leetcode
面试经典150题】88. 合并两个有序数组-Java
一、题目给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m+n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。nums2的长度为n。二、第一
GDJUpUp
·
2025-06-20 03:18
leetcode
算法
java
leetcode
_198_打家劫舍
思路:首先定义一个数组对于dp[i]读作1->i能获取的最大利益,第i个房屋只有"偷"和不"偷"两种情况,分别进行讨论"偷":既然"偷"了i那就肯定不能偷i-1了,但是为了使"偷"的尽可能多除了必须不能"偷"的全要"偷",所以得到第一个部分dp[i]=nums[i]+dp[i-2];不"偷":这就很明显了不"偷"那就是前[i-1]个的情况嘛dp[i]=dp[i-1];综上实现公式应为dp[i]=m
c_ceiling
·
2025-06-20 02:47
leetcode
算法
c++
LeetCode
面试经典150题 88.合并两个有序数组
题目:给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m+n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。nums2的长度为n。思路:从右
爱笑的coder
·
2025-06-20 02:16
算法刷题-数组
leetcode
面试
算法
Leetcode
面试150题 88.合并两个有序数组 简单
系列博客目录文章目录系列博客目录88.合并两个有序数组简单示例1:示例2:示例3:解答88.合并两个有序数组简单给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的
醒了就刷牙
·
2025-06-20 02:45
LeetCode刷题
leetcode
面试
算法
LeetCode
213.打家劫舍II 动态规划详细解法
213.打家劫舍II213.打家劫舍II题目来源题目分析题目难度题目标签题目限制解题思路核心算法步骤代码实现代码解读性能分析测试用例扩展讨论优化写法其他实现总结213.打家劫舍II题目来源213.打家劫舍II题目分析在这个问题中,房屋排列成一个圆形,小偷不能在同一晚上偷窃相邻的房屋,否则会触发警报。给定一个代表每个房屋存放金额的非负整数数组,我们需要计算小偷在不触动警报装置的情况下,能够偷窃到的最
Lentr0py
·
2025-06-20 02:15
LeetCode
算法题
leetcode
动态规划
java
算法
LeetCode
面试150——88合并两个有序数组
LeetCode
面试150——88合并两个有序数组题目难度:简单默认优化目标:最小化平均时间复杂度。Python默认为Python3。
沈小农学编程
·
2025-06-20 02:45
LeetCode
算法
leetcode
职场和发展
面试
(
LeetCode
面试经典 150 题 )88. 合并两个有序数组 (双指针)
题目:88.合并两个有序数组思路:双指针,倒序回填数组nums1,时间复杂度0(n+m),额外的空间复杂度0(1)。C++版本:classSolution{public:voidmerge(vector&nums1,intm,vector&nums2,intn){inti=m-1;intj=n-1;intk=n+m-1;while(i>=0&&j>=0){if(nums1[i]=0){nums1[
岁忧
·
2025-06-20 02:45
C++
JAVA
Go版本
LeetCode
LeetCode
面试经典
150
题
leetcode
面试
算法
c++
java
go
(
LeetCode
面试经典 150 题 ) 27. 移除元素 (双指针)
题目:27.移除元素思路:双指针,时间复杂度0(n)。左指针i左边的都是不等于val的值,右指针j右边都是等于val的值。C++版本:classSolution{public:intremoveElement(vector&nums,intval){inti=0,j=nums.size()-1;while(i<=j){if(nums[i]==val){nums[i]=nums[j];j--;}el
岁忧
·
2025-06-19 20:56
C++
JAVA
Go版本
LeetCode
LeetCode
面试经典
150
题
leetcode
面试
算法
java
go
c++
LeetCode
(python)659. 分割数组为连续子序列
来源:力扣(
LeetCode
)链接:https://
leetcode
-cn.com/p
柚子山茶花
·
2025-06-19 19:24
#
Java刷LeetCode题
leetcode
java
LeetCode
每日一题 1877. 数组中最大数对和的最小值
1877.数组中最大数对和的最小值一个数对(a,b)的数对和等于a+b。最大数对和是一个数对数组中最大的数对和。比方说,如果我们有数对(1,5),(2,3)和(4,4),最大数对和为max(1+5,2+3,4+4)=max(6,5,8)=8。给你一个长度为偶数n的数组nums,请你将nums中的元素分成n/2个数对,使得:nums中每个元素恰好在一个数对中,且最大数对和的值最小。请你在最优数对划分
喜欢下雨所以爱上雷震子
·
2025-06-19 19:54
每日一题
leetcode
算法
贪心算法
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他