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
-227. 基本计算器 II
题目实现一个基本的计算器来计算一个简单的字符串表达式的值。字符串表达式仅包含非负整数,+,-,*,/四种运算符和空格。整数除法仅保留整数部分。示例1:输入:"3+2*2"输出:7示例2:输入:"3/2"输出:1示例3:输入:"3+5/2"输出:5解题思路Consider-asnegativenumbers说是栈的经典应用,结果好难做,哭哭最基本的题目,参考了这篇题解:https://leetcod
KpLn_HJL
·
2024-09-05 06:40
OJ题目记录
leetcode
算法
职场和发展
Leetcode
面试经典150题-54.螺旋矩阵
解法都在代码里,不懂就留言或者私信这个题可能和算法关联不大,coding技巧为上classSolution{publicListspiralOrder(int[][]matrix){/**先定义结果集*/Listans=newArrayListexistsSet=newHashSet=0&&colNext>=0&&rowNext
鱼跃鹰飞
·
2024-09-05 05:36
数据结构与算法
字节跳动高频面试题
leetcode
面试
算法
基本计算器【 力扣(
LeetCode
) 】
一、题目描述给你一个字符串表达式s,请你实现一个基本计算器来计算并返回它的值。注意:不允许使用任何将字符串作为数学表达式计算的内置函数,比如eval()。二、测试用例示例1:输入:s="1+1"输出:2示例2:输入:s="2-1+2"输出:3示例3:输入:s="(1+(4+5+2)-3)+(6+8)"输出:23提示:1op_set={{"n",1},{"+",1},{"-",1},{"(",2},
理论最高的吻
·
2024-09-05 05:35
leetcode
算法
职场和发展
C++
栈
逆波兰表达式
常见的算法底层思想
2.
动态规划
思想:将原问题分解为若干个相互重叠的子问题,通过解决子问题来构建原问题的解,并存储子问题的解以避免重复计算。例子:斐波那契数列、最长公共子序列、背包问题。
qinbaby
·
2024-09-05 04:58
算法
LeetCode
2860.让所有学生保持开心的分组方法数:排序+遍历
【LetMeFly】2860.让所有学生保持开心的分组方法数:排序+遍历力扣题目链接:https://
leetcode
.cn/problems/happy-students/给你一个下标从0开始、长度为
Tisfy
·
2024-09-05 03:50
题解
#
力扣LeetCode
leetcode
算法
数据结构
题解
排序
贪心
遍历
leetcode
算法题之N皇后
N皇后也是一道很经典的问题,问题如下:题目地址按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n皇后问题研究的是如何将n个皇后放置在n×n的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数n,返回所有不同的n皇后问题的解决方案。每一种解法包含一个不同的n皇后问题的棋子放置方案,该方案中'Q'和'.'分别代表了皇后和空位。解法:回溯回溯是基于DFS的一种算法,它通过在解
前端码农小黄
·
2024-09-05 02:45
算法
算法
leetcode
【
LeetCode
-SQL每日一练】——2. 第二高的薪水
接下来小梦会带领小伙伴们一起每天刷一道
LeetCode
-数据库(SQL)相关的题目,然后在文章后例举相关知识点帮助小伙伴们学习与巩固,更好的掌握SQL。??♂小伙伴们如果在学习过程中有不
m0_67401920
·
2024-09-05 01:14
面试
学习路线阿里巴巴
android
前端
后端
LeetCode
C++10-K个一组翻转链表
问题描述给你一个链表,每k个节点一组进行翻转,请你返回翻转后的链表。k是一个正整数,它的值小于或等于链表的长度。如果节点总数不是k的整数倍,那么请将最后剩余的节点保持原有的顺序。举例示例1:输入:1->2->3->4->5k=2输出:2->1->4->3->5示例2:输入:1->2->3->4->5k=3输出:3->2->1->4->5示例3:输入:1->2->3->4->5k=1输出:1->2-
JXH_123
·
2024-09-05 01:42
LeetCode高频算法面试题
算法
c++
leetcode
leetcode
算法题之 K 个一组翻转链表
照我说这道题其实是披着困难皮的中等题目,问题如下:题目地址给你链表的头节点head,每k个节点一组进行翻转,请你返回修改后的链表。k是一个正整数,它的值小于或等于链表的长度。如果节点总数不是k的整数倍,那么请将最后剩余的节点保持原有顺序。你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。解法:首先我们来看一个更简单的问题,就是如何进行原地反转链表反转链表其实很简单,通过几个变量就可以实现
前端码农小黄
·
2024-09-05 01:12
算法
算法
leetcode
链表
LeetCode
全排列2(js简单快通法)
题目描述给定一个可包含重复数字的序列nums,按任意顺序返回所有不重复的全排列。示例1:输入:nums=[1,1,2]输出:[[1,1,2],[1,2,1],[2,1,1]]示例2:输入:nums=[1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]解题思路使用全排列函数生成所有排列,然后去重以得到最终结果代码/***@param{
山雀~
·
2024-09-05 01:42
LeetCode合集
leetcode
javascript
算法
Leetcode
-有效的数独
相信喜欢玩数独的朋友们肯定能猜出这道题的要求了哈哈。请你判断一个9x9的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可:数字1-9在每一行只能出现一次。数字1-9在每一列只能出现一次。数字1-9在每一个以粗实线分隔的3x3宫内只能出现一次。(请参考示例图)注意:一个有效的数独(部分已被填充)不一定是可解的。只需要根据以上规则,验证已经填入的数字是否有效即可。空白格用'.'表示。解
Liu_Junwei
·
2024-09-05 01:09
算法
leetcode
算法
【
leetcode
】- 83.Remove Duplicates from Sorted List
1、题目描述Givenasortedlinkedlist,deleteallduplicatessuchthateachelementappearonlyonce.Example1:Input:1->1->2Output:1->2Example2:Input:1->1->2->3->3Output:1->2->32、问题描述:删除链表中重复的值。3、问题关键:双指针,因为是排好序的,一个先走,指导
邓泽军_3679
·
2024-09-05 01:25
LeetCode
算法:零钱兑换 c++
原题链接:零钱兑换难度:中等⭐️⭐️题目给你一个整数数组coins,表示不同面额的硬币;以及一个整数amount,表示总金额。计算并返回可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回-1。你可以认为每种硬币的数量是无限的。示例1:输入:coins=[1,2,5],amount=11输出:3解释:11=5+5+1示例2:输入:coins=[2],amount=3输出:
Codec Conductor
·
2024-09-04 23:02
力扣
算法
leetcode
c++
动态规划
数据结构
Golang |
Leetcode
Golang题解之第386题字典序排数
题目:题解:funclexicalOrder(nint)[]int{ans:=make([]int,n)num:=1fori:=rangeans{ans[i]=numifnum*10n{num/=10}num++}}returnans}
__AtYou__
·
2024-09-04 21:15
经验分享
Golang
Leetcode
题解
Leetcode
146. LRU 缓存(Medium)
请你设计并实现一个满足LRU(最近最少使用)缓存约束的数据结构。实现LRUCache类:LRUCache(intcapacity)以正整数作为容量capacity初始化LRU缓存intget(intkey)如果关键字key存在于缓存中,则返回关键字的值,否则返回-1。voidput(intkey,intvalue)如果关键字key已经存在,则变更其数据值value;如果不存在,则向缓存中插入该组k
会有黎明吗
·
2024-09-04 20:44
leetcode
leetcode
缓存
spring
LeetCode
-209-长度最小的子数组
示例说明请见
LeetCode
官网。来源:力扣(
LeetCode
)链接:https://
leetcode
-cn.com/problems/minim
醉舞经阁半卷书
·
2024-09-04 18:26
牛客(最小花费爬楼梯)
最小花费爬楼梯题目题解(131)讨论(110)排行面经new时间限制:1秒空间限制:256M知识点
动态规划
描述给定一个整数数组cost,其中[]cost[i]是从楼梯第i个台阶向上爬需要支付的费用,下标从
希望有朝一日能如愿以偿
·
2024-09-04 17:58
算法
每日一题:力扣738. 单调递增的数字
题目链接:https://
leetcode
-cn.com/problems/monotone-increasing-digits/题目给定一个非负整数N,找出小于或等于N的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增
看了个寂寞
·
2024-09-04 17:53
算法
leetcode
贪心算法
【
动态规划
】343. 整数拆分
力扣链接:343.整数拆分-力扣(
LeetCode
)dp数组的含义:dp[i]表示对i拆分,得到最大的积为dp[i]递推公式:拆成两个数是j*(i-j),拆成三个及以上是j*dp[i-j],所以递推公式取两者大值遍历顺序
羊毛_
·
2024-09-04 15:17
力扣刷题记录
动态规划
算法
Leetcode
662. Maximum Width of Binary Tree
文章作者:Tyan博客:noahsnail.com|CSDN|1.DescriptionMaximumWidthofBinaryTree2.Solution/***Definitionforabinarytreenode.*structTreeNode{*intval;*TreeNode*left;*TreeNode*right;*TreeNode(intx):val(x),left(NULL),
SnailTyan
·
2024-09-04 15:18
LeetCode
2860. 让所有学生保持开心的分组方法数 (排序、枚举)
题目:2860.让所有学生保持开心的分组方法数思路:先将数组nums进行升序排序。然后假设第i-1位学生选中,而第i位学生没有选中,并且所有学生都符合开心要求。那么根据开心要求,[0,i-1]的学生,nums值都是小于被选中的人数k;且[i,n-1]的学生,nums值都是大于被选中的人数k。这时被选中的人数就是i,即nums[i-1]0时,可以一个学生都不选。当nums[n-1]&nums){so
岁忧
·
2024-09-04 13:29
LeetCode
leetcode
算法
职场和发展
c++
暴力枚举
数据结构
LeetCode
-977-有序数组的平方
给定一个按非递减顺序排序的整数数组A,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。image.png解题思路:暴力法:遍历开平方,再排序;双指针,因为输入A为从小到大排序的,从列表两边开始开方比较,取对比后的较大值,存入ans的末位,以此类推。Python3代码:classSolution:defsortedSquares(self,A:List[int])->List[int]:#a
阿凯被注册了
·
2024-09-04 12:45
2021-05-22
IT1.
LeetCode
力扣:复原IP地址Java编写2021-05-22(93.复原IP地址)英语1.墨墨背单词:复习50个单词
幸福大黑鸭
·
2024-09-04 09:17
Leetcode
-1143 最长公共子序列 最长公共子串
最长公共子序列:题目描述:给定两个字符串text1和text2,返回这两个字符串的最长公共子序列的长度。如果不存在公共子序列,返回0。一个字符串的子序列是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,"ace"是"abcde"的子序列,但"aec"不是"abcde"的子序列。两个字符串的公共子序列是这两个字符串所共同拥
qq_39622795
·
2024-09-04 08:55
Leetcode
动态规划
最长公共子序列
最长公共子串
字符串处理
二维数组
探索C++编程技巧:计算两个字符串的最长公共子串
目录引言问题描述解决思路实现步骤基础实现
动态规划
优化代码示例复杂度分析总结
清水白石008
·
2024-09-04 08:52
C++
C++题库
面试试题
c++
代理模式
开发语言
C语言 |
Leetcode
C语言题解之第394题字符串解码
题目:题解:#defineN2000typedefstruct{intdata[30];;inttop;}Stack;voidpush(Stack*s,inte){s->data[(s->top)++]=e;}intpop(Stack*s){returns->data[--(s->top)];}//多位数字串转换成intintstrToInt(char*s){charval[]={'\0','\0
DdddJMs__135
·
2024-09-04 06:11
分享
C语言
Leetcode
题解
Java |
Leetcode
Java题解之第392题判断子序列
题目:题解:classSolution{publicbooleanisSubsequence(Strings,Stringt){intn=s.length(),m=t.length();int[][]f=newint[m+1][26];for(inti=0;i=0;i--){for(intj=0;j<26;j++){if(t.charAt(i)==j+'a')f[i][j]=i;elsef[i][
m0_57195758
·
2024-09-04 06:11
分享
Java
Leetcode
题解
Python |
Leetcode
Python题解之第393题UTF-8编码验证
题目:题解:classSolution:defvalidUtf8(self,data:List[int])->bool:MASK1,MASK2=1int:if(num&MASK1)==0:return1n,mask=0,MASK1whilenum&mask:n+=1ifn>4:return-1mask>>=1returnnifn>=2else-1index,m=0,len(data)whilein
Mopes__
·
2024-09-04 06:40
分享
Python
Leetcode
题解
C++ |
Leetcode
C++题解之第392题判断子序列
题目:题解:classSolution{public:boolisSubsequence(strings,stringt){intn=s.size(),m=t.size();vector>f(m+1,vector(26,0));for(inti=0;i=0;i--){for(intj=0;j<26;j++){if(t[i]==j+'a')f[i][j]=i;elsef[i][j]=f[i+1][j
Ddddddd_158
·
2024-09-04 06:40
经验分享
C++
Leetcode
题解
C++ |
Leetcode
C++题解之第393题UFT-8编码验证
题目:题解:classSolution{public:staticconstintMASK1=14){return-1;}mask>>=1;}returnn>=2?n:-1;}boolvalidUtf8(vector&data){intm=data.size();intindex=0;while(indexm){returnfalse;}for(inti=1;i
Ddddddd_158
·
2024-09-04 06:40
经验分享
C++
Leetcode
题解
Leetcode
Day15 不定长滑动窗口
模版l=0forrinrange(n):count[r]+=1while(不满足):count[l]-=1l+=13无重复的最长连续子串classSolution:deflengthOfLongestSubstring(self,s:str)->int:count={}res=0n=len(s)l=0forrinrange(n):c=s[r]count[c]=count.get(c,0)+1whi
比起村村长
·
2024-09-04 04:58
leetcode
算法
python
数据结构
一起学习
LeetCode
热题100道(32/100)
32.随机链表的复制(学习)给你一个长度为n的链表,每个节点包含一个额外增加的随机指针random,该指针可以指向链表中的任何节点或空节点。构造这个链表的深拷贝。深拷贝应该正好由n个全新节点组成,其中每个新节点的值都设为其对应的原节点的值。新节点的next指针和random指针也都应指向复制链表中的新节点,并使原链表和复制链表中的这些指针能够表示相同的链表状态。复制链表中的指针都不应指向原链表中的
久违的小技巧
·
2024-09-04 03:22
学习
leetcode
算法
【无标题】一起学习
LeetCode
热题100道(67/100)
67.寻找旋转排序数组中的最小值(学习)已知一个长度为n的数组,预先按照升序排列,经由1到n次旋转后,得到输入数组。例如,原数组nums=[0,1,2,4,5,6,7]在变化后可能得到:若旋转4次,则可以得到[4,5,6,7,0,1,2]若旋转7次,则可以得到[0,1,2,4,5,6,7]注意,数组[a[0],a[1],a[2],…,a[n-1]]旋转一次的结果为数组[a[n-1],a[0],a[
久违的小技巧
·
2024-09-04 03:22
学习
leetcode
算法
一起学习
LeetCode
热题100道(65/100)
65.在排序数组中查找元素的第一个和最后一个位置(学习)给你一个按照非递减顺序排列的整数数组nums,和一个目标值target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值target,返回[-1,-1]。你必须设计并实现时间复杂度为O(logn)的算法解决此问题。示例1:输入:nums=[5,7,7,8,8,10],target=8输出:[3,4]示例2:输入:nums
久违的小技巧
·
2024-09-04 03:21
leetcode
学习
算法
【Hot100】
LeetCode
—153. 寻找旋转排序数组中的最小值
目录1-思路二分2-实现⭐33.搜索旋转排序数组——题解思路3-ACM实现原题链接:153.寻找旋转排序数组中的最小值1-思路二分左区间二分找分界点,二分找到旋转后的分界点即可以nums[mid]为基准,对比nums[0]即可找到区间分界点2-实现⭐33.搜索旋转排序数组——题解思路classSolution{publicintfindMin(int[]nums){intleft=0;intrig
山脚ice
·
2024-09-03 21:15
#
Hot100
leetcode
java
算法
【NO.17】
LeetCode
经典150题-13. 罗马数字转整数
文章目录【NO.17】
LeetCode
经典150题-13.罗马数字转整数解题:模拟【NO.17】
LeetCode
经典150题-13.罗马数字转整数13.罗马数字转整数【简单】罗马数字包含以下七种字符:I
悬浮海
·
2024-09-03 21:15
#
LeetCode
经典150题
leetcode
算法
罗马数字转整数
刷题Day64|Floyd 算法精讲:97. 小明逛公园、A * 算法精讲:127. 骑士的攻击
思路:核心思想是
动态规划
。分两种情况:(1)节点i到节点j的最短路径经过节点k:grid[i][j][k]=grid[i][k][k-1]
风啊雨
·
2024-09-03 21:15
算法
代码随想录算法训练营第三十四天 |
动态规划
part02
62.不同路径classSolution{public:intuniquePaths(intm,intn){vector>dp(m,vector(n,1));for(inti=1;i>&obstacleGrid){intm=obstacleGrid.size();intn=obstacleGrid[0].size();vector>dp(m,vector(n,0));for(inti=0;i
sagen aller
·
2024-09-03 21:14
算法
动态规划
代码随想录算法训练营第三十二天(
动态规划
一)
前几天有点忙加上贪心后面好难QWQ暂时跳过两天的贪心,开始学动归
动态规划
理论基础:文章链接:代码随想录文章思维导图:文章摘要:
动态规划
,英文:DynamicProgramming,简称DP,如果某一问题有很多重叠子问题
map1e_zjc
·
2024-09-03 21:13
算法
动态规划
c++
leetcode
LeetCode
——反转链表&&相交链表
目录一.反转链表题目介绍:代码实现:解题思路:二.相交链表题目介绍:代码实现:分析题目:解题思路:一.反转链表题目介绍:给你单链表的头节点head,请你反转链表,并返回反转后的链表。示例1:输入:head=[1,2,3,4,5]输出:[5,4,3,2,1]示例2:输入:head=[1,2]输出:[2,1]示例3:输入:head=[]输出:[]提示:链表中节点的数目范围是[0,5000]-5000n
宁檬精
·
2024-09-03 21:12
leetcode
链表
javascript
【Hot100】
LeetCode
—33. 搜索旋转排序数组
目录1-思路二分2-实现⭐33.搜索旋转排序数组——题解思路3-ACM实现原题链接:33.搜索旋转排序数组1-思路二分①左区间二分、②寻找目标值所处区间、③二分目标值①左区间二分——>找到最后一个比nums[0]大的元素,也就是前半段即nums[mid]>=nums[0]②寻找目标值所在区间if(target>=nums[0])——>left=0;else{left=left+1;right=nu
山脚ice
·
2024-09-03 20:11
#
Hot100
leetcode
算法
代码随想录算法训练营第三十四天(
动态规划
二)
-力扣(
LeetCode
)题面:一个机器人位于一个mxn网格的左上角(起始点在下图中标记为“Start”)。机器人每次只能向下或者向右移动一步。
map1e_zjc
·
2024-09-03 20:40
动态规划
算法
c++
leetcode
贪心算法---不同路径
思路:
动态规划
五部曲:1.确定dp数组及含义。dp数组需要是一个二维数组,dp[i][j]代表从起始位置到下标为(i,j)位置的不同路径条数。2.确定递推公式。
小鱼在乎
·
2024-09-03 20:38
数据结构与算法
贪心算法
算法
数据结构
动态规划
-股票问题
-力扣(
LeetCode
)一次买卖股票的最大收益1.dp[i][0]表示第i天持有股票所得最多现金,dp[i][1]表示第i天不持有股票所得最多现金2.dp[i][0]=max(dp[i-1][0],-
万事尽全力
·
2024-09-03 20:38
算法题汇总
动态规划
算法
动态规划
-子序列问题
300.最长递增子序列1.dp[i]表示i之前包括i的以nums[i]结尾的最长递增子序列的长度2.位置i的最长升序子序列等于j从0到i-1各个位置的最长升序子序列+1的最大值。if(nums[i]>nums[j])dp[i]=max(dp[i],dp[j]+1);//注意这里不是要dp[i]与dp[j]+1进行比较,而是我们要取dp[j]+1的最大值。3.dp[i](即最长递增子序列)起始大小至
万事尽全力
·
2024-09-03 20:08
算法题汇总
动态规划
算法
[每日一练]平均售价(MySQL中对null值的处理,和连接表时多条件的判断)
改题目来源于力扣:1251.平均售价-力扣(
LeetCode
)题目要求:表:Prices+---------------+---------+|ColumnName|Type|+------------
伪编辑科学家
·
2024-09-03 15:04
MySQL每日一练
mysql
数据库
算法
力扣
sql
LeetCode
- 74. 搜索二维矩阵
74.搜索二维矩阵编写一个高效的算法来判断mxn矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。解题思路:本题本质上还是在考察二分查找,二维数组本质上依然是一维数组,因此转换成熟知的一维数组的二分查找即可解题。请看代码。classSolution{public:boolsearchMatrix(vector>&matrix,
virgilshi
·
2024-09-03 14:30
LeetCode
二分法
【Hot100】
LeetCode
—20. 有效的括号
目录1-思路栈实现2-实现⭐20.有效的括号——题解思路3-ACM实现原题链接:20.有效的括号1-思路栈实现遇到一个左括号,将对应的右括号压栈处理否则弹出栈顶元素,比较和当前括号是否一致,不一致返回false三种情况①左右不匹配②左多右少,判断在最后返回st.isEmpty()上③左少右多,判断在elseif(st.isEmpty()||c!=st.peek())2-实现⭐20.有效的括号——题
山脚ice
·
2024-09-03 14:30
#
Hot100
leetcode
java
算法
leetcode
74. 搜索二维矩阵(java)
搜索二维矩阵
leetcode
74.搜索二维矩阵题目描述抽象BST代码演示抽象BST
leetcode
74.搜索二维矩阵来源:力扣(
LeetCode
)链接:https://
leetcode
.cn/problems
SP_1024
·
2024-09-03 14:56
算法
java
数据结构
leetcode
矩阵
java
算法
职场和发展
数据结构
LeetCode
力扣 91. 解码方法
題目描述(中等难度)每个数字对应一个字母,给一串数字,问有几种解码方式。例如226可以有三种,2|2|6,22|6,2|26。解法一递归很容易想到递归去解决,将大问题化作小问题。比如232232323232。对于第一个字母我们有两种划分方式。2|32232323232和23|2232323232所以,如果我们分别知道了上边划分的右半部分32232323232的解码方式是ans1种,22323232
windliang
·
2024-09-03 12:17
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
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
其他