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
#第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
算法基础:贪心策略
基本上所有的贪心算法都可以用
回溯
来解决(全排列),就是说如果真的想不到好的贪心策略去实现,全排列也可以解决这个算法问题,只是时间复杂度会非常高(>O(n!
Ym影子
·
2025-06-22 15:58
算法
算法
贪心算法
leetcode
每日
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
推荐一些DBeaver和Navicat的插件
Navicat的实用插件及扩展推荐,结合两者特性分类整理:一、DBeaver插件推荐(开源扩展性强)GitIntegration功能:将SQL脚本、连接配置纳入Git版本控制,支持分支对比与提交记录
回溯
·
2025-06-22 08:44
java
哥德巴赫猜想(北理工2018年考研复试机试题)
回溯
机制:选择某个素数对后递归处理下一个偶数,完成后撤销选择(pop_back),继续尝
视默
·
2025-06-22 02:36
算法
C++
深度优先
图论
从“信息茧房”到“内容生态”:一个算法解救了我的推荐系统(3085. 成为 K 特殊字符串需要删除的最少字符数)
今天想和大家聊聊一个我最近在项目中遇到的“甜蜜的烦恼”,以及我是如何从一个看似不相关的
LeetCode
算法题中找到灵感,并最终完美解决问题的。我遇到了什么问题?
满分观察网友z
·
2025-06-22 00:20
算法解构与应用
算法
数据库
【递归、搜索与
回溯
算法】递归
递归递归汉诺塔(easy)合并两个有序链表(easy)反转链表(easy)两两交换链表中的节点(medium)Pow(x,n)-快速幂(medium)递归在解决⼀个规模为n的问题时,如果满⾜以下条件,我们可以使⽤递归来解决:a.问题可以被划分为规模更⼩的⼦问题,并且这些⼦问题具有与原问题相同的解决⽅法。b.当我们知道规模更⼩的⼦问题(规模为n-1)的解时,我们可以直接计算出规模为n的问题的解。c.
T哇
·
2025-06-21 19:47
递归
搜索与回溯算法
算法
回溯
----7.分割回文串
从第一个元素处开始切割,判断是否是回文子串若是则保存到tempRes中,并从i+1处开始重复上述流程从第一个元素开始切割,直到切割到最后一个元素保存结果若不是则迭代i,从下一个元素处开始尝试切割.......
回溯
码破苍穹ovo
·
2025-06-21 18:12
算法日记-Hot100
算法
回溯
----8.N皇后
若放置途中出现无合法位置的情况,
回溯
将上一行棋子放置在其他合法位置,再重复上述流程继续放置直到n个棋子。成功放置n个棋子后得到第一种情况,开始
回溯
重复上述流程,直到
回溯
至
码破苍穹ovo
·
2025-06-21 18:12
算法日记-Hot100
算法
java
数据结构
回溯
算法(3)--其实不是
回溯
填充才会涉及到
回溯
请你判断一个9x9的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字1-9在每一行只能出现一次。数字1-9在每一列只能出现一次。数字1-9在每一个以粗实线分隔的3x3宫内只能出现一次。(请参考示例图)判断条件:1.行内无重复当前数字不能在同一行已出现过使用一个数组row[i]记录第i行已经出现的数字2.列内无重复当前数字不能在同一列已出现过使用一个数组cols[i]记录第i列
m0_62653520
·
2025-06-21 17:05
算法
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
面试
算法
回溯
----1.全排列
**返回该数组存在的所有访问顺序大致执行流程:首先选取一个元素作为起点,保存该元素;再访问下一个元素并保存,重复上述流程,直到访问所有元素;将该路径添加到res中
回溯
到上一步,更换访问顺序,直到访问完所有元素
·
2025-06-20 02:15
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
算法
贪心算法
划分数组并满足最大差限制
题目链接2966.划分数组并满足最大差限制-力扣(
LeetCode
)解题思路这道题要求我们把给定的整数数组nums划分成多个长度为3的子数组,并且每个子数组中的最大值和最小值的差不能超过整数k。
.wei-upup
·
2025-06-19 19:22
刷题分享
leetcode
算法
数据结构
c++
148. 排序链表
详细题解可参见https://
leetcode
.cn/problems/sort-lis
zmuy
·
2025-06-19 19:19
LeetCode
hot100
链表
数据结构
leetcode
23-合并K个升序链表
leetcode
23思路遍历所有链表收集节点:将每个链表的节点断开其next指针后存入数组对数组进行排序:使用JavaScript的内置sort方法对节点数组按值排序重新连接排序后的节点:遍历排序后的数组
记得早睡~
·
2025-06-19 18:42
leetcode热题100
算法小课堂
链表
数据结构
leetcode
算法
leetcode
148. 排序链表
方法1:插入方法进行改进classSolution{publicListNodesortList(ListNodehead){/*想法:设置两个指针first,last分别指向当前有序子链表的头和尾节点;并遍历链表,当遍历到的节点值大于last的值时,就将该节点插入到有序子链表表尾值小于first时,插入到子链表表头,处于二者中间时,就遍历进行插入*/if(head==null)returnnul
I_W_S
·
2025-06-19 13:02
leetcode刷题记录
链表
数据结构
leetcode
算法
数据结构算法题——数组
leetcode
-1.两数之和
leetcode
-1.两数之和给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。
linjiayina
·
2025-06-19 11:50
算法
数据结构
算法
上一页
7
8
9
10
11
12
13
14
下一页
按字母分类:
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
其他