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题目分析
代码随想录|贪心day2
122.力扣(
LeetCode
)官网-全球极客挚爱的技术成长平台买股票的最佳时机,这道题其实和53有一点像,因为不需要写出哪个区间卖出买进,所以判断prices[i]-prices[i-1]的值的大小,
•)
·
2024-02-10 08:29
leetcode
算法
职场和发展
代码随想录|Day 14
Day14新年将至一、理论学习BFS的使用场景总结:层序遍历、最短路径问题(https://
leetcode
.cn/problems/binary-tree-level-order-traversal/
东鹅鹅鹅
·
2024-02-10 08:58
c++
leetcode
:216.组合总和三
题目理解:在组合的基础上,考虑组合的总和为n。最直白的暴力方法是for循环嵌套n层,但是代码无法实现,因为n不确定。所以我们可以用递归几层来相当于循环嵌套几层实现。树形结构:for循环是按照[1,9]这个范围,树的宽度深度是k,树的深度代码:1.定义path和result数组2.参数targetSum,k,Sum,startIndex(初始化为1).3.如果path的长度为而且targetSum和
冲冲冲冲冲冲1024
·
2024-02-10 08:57
leetcode
算法
职场和发展
leetcode
:17.电话号码的字母组合
题意和解题思路:数字和字母的一一对应采用二维数组或者map映射。这里我采用数组进行存储进而实现一一对应。由于我们无法知道for循环嵌套几层,因为这个是由于输入来确定的,所以我们可以用回溯算法中的递归来进行实现。树形结构:我们所要求的结果就在树形结构的叶子节点中。树的宽度由字母数组决定,深度由输入决定。代码:初始化定义:收集单个结果用s,整个结果用result,letterMap存储映射关系。ind
冲冲冲冲冲冲1024
·
2024-02-10 08:57
leetcode
算法
职场和发展
leetcode
:63.不同路径二
dp数组含义:由初始位置到最终位置路径个数递推公式:如果没有障碍再进行递推公式初始化:1.若起始位置和终止位置有障碍路径个数为02.dp[i][0]==1和dp[0][j]==1的for循环条件都需要加上一个anddp[i][0]==0和anddp[0][j]==0.3.遍历顺序不变4.代码:
冲冲冲冲冲冲1024
·
2024-02-10 08:57
leetcode
算法
数据结构
leetcode
:77.组合
1.如果只找长度为2的组合,那么两个for循环可以搞定。但是如果长度太大为n,那么就需要n个for循环嵌套,我们考虑使用回溯算法。2.回溯算法的思路都是以树形结构为基础的。3.回溯算法三部曲:(和递归异曲同工)1.递归函数的参数及返回值2.确定终止条件3.单层递归逻辑代码思路:result数组:二维存放结果集path数组:存放单个组合
冲冲冲冲冲冲1024
·
2024-02-10 08:27
leetcode
算法
职场和发展
leetcode
:77.组合优化
回溯法虽然是暴力搜索,但有时候可以有点剪枝优化以下的。可以剪枝的地方就在递归中每一层的for循环所选择的起始位置。如果for循环选择的起始位置之后的元素个数已经不足我们需要的元素个数了,那么就没有必要搜索了。优化过程:已经选择的元素个数:path.size();所需需要的元素个数为:k-path.size();列表中剩余元素(n-i)>=所需需要的元素个数(k-path.size())在集合n中至
冲冲冲冲冲冲1024
·
2024-02-10 08:27
leetcode
算法
职场和发展
leetcode
:70.爬楼梯
递推关系:可以根据前两步的方法求和所得1阶:1种2阶:2种3阶:3种4阶:5种1.dp数组求和:达到i阶有dp[i]种方法2.递推关系式:dp[i]=dp[i-1]+dp[i-2](难点)3.dp数组初始化:dp[1]=1,dp[2]=24.数组遍历顺序:从前往后其实,这个数组也是一个fibo数列。a[0]无意义。
冲冲冲冲冲冲1024
·
2024-02-10 08:26
leetcode
算法
职场和发展
leetcode
:62.不同路径
动态规划注意:用深搜或者广搜会超时dp含义dp[i,j]:从(0,0)到(i,j)的路径个数递推公式:dp[i][j]=dp[i-1][j]+dp[i][j-1]初始化:for(i=0,i<m,i++)dp[i][0]=1for(i=0,i<m,i++)dp[0][j]=1遍历顺序:我们的初始值在左边和上面,所以应该从左往右,从上往下1遍历。打印dp数组代码:
冲冲冲冲冲冲1024
·
2024-02-10 08:56
leetcode
算法
职场和发展
反转字符串(力扣
LeetCode
)
文章目录344.反转字符串题目描述reverse函数双指针344.反转字符串题目描述编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用O(1)的额外空间解决这一问题。示例1:输入:s=[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]示例2:输入:s=[“H”,“a”,
林海绮律
·
2024-02-10 07:42
leetcode
leetcode
算法
数据结构
c++
双指针
LeetCode
128. 最长连续序列 | Python
128.最长连续序列题目给定一个未排序的整数数组,找出最长连续序列的长度。要求算法的时间复杂度为O(n)。示例:输入:[100,4,200,1,3,2]输出:4解释:最长连续序列是[1,2,3,4]。它的长度为4。解题思路思路:哈希表本题主要的难点在于算法时间复杂度限定为O(n)的方法上。先假设一般的情况下。可以尝试枚举数组中每个元素i,以其起点不断尝试匹配+1,+2...是否存在于数组中,这样不
大梦三千秋
·
2024-02-10 07:50
二进制求和
LeetCode
第67题题目描述:给你两个二进制字符串,返回它们的和(用二进制表示)。输入为非空字符串且只包含数字1和0。
Lularible
·
2024-02-10 07:13
LeetCode
200:岛屿数量(图的简化版之网格结构上的BFS、DFS)
图的BFS和DFS首先让我们回顾一下图的BFS和DFS遍历。可以看到这种BFS和DFS板子适用于图形状,或者说结构已经确定,即我们遍历的时候只需要从根节点从上往下遍历即可,不用考虑这个节点有几个叶子节点,是否会遍历到空节点等边界情况的问题。publicclassGraph{publicHashMapnodes;//点集,第一个参数是点的编号。和Node类中的value一致。不一定是Integer类
鸡鸭扣
·
2024-02-10 07:56
LeetCode
深度优先
leetcode
宽度优先
后端
算法
图搜索
图论
LeetCode
:210课程表Ⅱ(图论:拓扑排序判断是否有环)
做本题之前最好先做了
LeetCode
:207课程表,见本人另一篇博客http://t.csdnimg.cn/vSXgN题目现在你总共有numCourses门课需要选,记为0到numCourses-1。
鸡鸭扣
·
2024-02-10 07:26
LeetCode
leetcode
图论
算法
后端
LeetCode
力扣 面试经典150题 详细题解 (1~5) 持续更新中
目录1.合并两个有序数组2.移动元素3.删除有序数组中的重复项4.删除排序数组中的重复项II暂时更新到这里,博主会持续更新的1.合并两个有序数组题目(难度:简单):给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存
碎像
·
2024-02-10 06:02
leetcode
面试
算法
LeetCode
力扣 115. 不同的子序列
题目描述(困难难度)给定两个字符串S和T,从S中选择字母,使得刚好和T相等,有多少种选法。解法一递归之分治S中的每个字母就是两种可能选他或者不选他。我们用递归的常规思路,将大问题化成小问题,也就是分治的思想。如果我们求S[0,S_len-1]中能选出多少个T[0,T_len-1],个数记为n。那么分两种情况,S[0]==T[0],需要知道两种情况从S中选择当前的字母,此时S跳过这个字母,T也跳过一
windliang
·
2024-02-10 06:34
代码随想录
Leetcode
53. 最大子数组和
题目:代码(首刷看解析2024年2月9日):classSolution{public:intmaxSubArray(vector&nums){intres=INT_MIN;intcount=0;for(inti=0;i<nums.size();++i){count+=nums[i];res=max(res,count);if(count<0)count=0;}returnres;}};
meeiuliuus
·
2024-02-10 06:51
#
leetcode
---medium
算法
代码随想录
Leetcode
122. 买卖股票的最佳时机 II
题目:代码(首刷自解2024年2月9日):classSolution{public:intmaxProfit(vector&prices){intres=0;for(inti=1;i0){res+=prices[i]-prices[i-1];}else{continue;}}returnres;}};
meeiuliuus
·
2024-02-10 06:51
#
leetcode
---medium
算法
代码随想录
Leetcode
376. 摆动序列
题目:代码(首刷看解析2024年2月9日):classSolution{public:intwiggleMaxLength(vector&nums){if(nums.size()nums[i-1]){if(direction==1)continue;direction=1;res++;}else{if(direction==-1)continue;direction=-1;res++;}}retu
meeiuliuus
·
2024-02-10 06:50
#
leetcode
---medium
前端
算法
javascript
代码随想录
Leetcode
55. 跳跃游戏
题目:代码(首刷自解2024年2月9日):classSolution{public:boolcanJump(vector&nums){intnoz=0;for(inti=nums.size()-2;i>=0;--i){if(nums[i]==0){noz++;continue;}else{if(nums[i]>noz)noz=0;else{noz++;continue;}}}returnnoz==
meeiuliuus
·
2024-02-10 06:50
#
leetcode
---medium
算法
面试复盘——8
LeetCode
226.翻转二叉树解释一下Stackoverflow很尴尬啊第一下没反应过来,我以为是那个论坛。。后面才反
Climber47
·
2024-02-10 06:28
面试复盘——失败乃成功之母
面试
职场和发展
《剑指Offer》笔记&题解&思路&技巧&优化 Java版本——新版
leetcode
_Part_1
《剑指Offer》笔记&题解&思路&技巧&优化_Part_1相知相识开始刷题1.LCR120.寻找文件副本——数组中重复元素2.LCR121.寻找目标值-二维数组——二维数组中查找3.LCR122.路径加密——替换空格4.LCR123.图书整理I——从尾到头打印链表5.LCR124.推理二叉树——重建二叉树6.LCR125.图书整理II——用两个栈实现队列7.LCR126.斐波那契数——斐波那契数
_Matthew
·
2024-02-10 05:24
Leetcode
笔记
java
开发语言
算法刷题 DAY10
LeetCode
:232.用栈实现队列//两个栈,负负得正→先进先出//题目都是合法操作,不用判断操作是否合法(如对空栈进行弹栈)typedefstruct{intstack_in[100];intstack_out
毅凉
·
2024-02-10 05:41
算法
数据结构
c语言
LeetCode
题解 _ 78.子集
谢谢平台提供-http://bjbsair.com/2020-04-13/tech-info/65261.html力扣78.子集(点击查看题目)题目描述给定一组不含重复元素的整数数组nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。示例:输入:nums=[1,2,3]输出:[[3],[1],[2],[1,2,3],[1,3],[2,3],[1,2],[]]解决方案观察全排列
HDX柿子
·
2024-02-10 05:02
代码随想录
LeetCode
78. 子集
题目给你一个整数数组nums,数组中的元素互不相同。返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。你可以按任意顺序返回解集。解题思路一本题可用两种方法实现,容易想到的是利用for循环和回溯法对数组nums遍历,因为要求不能包含重复的子集,则for循环时需要设置startIndex,每次回溯,startinde+1.回溯的终止条件为startIndex大于等于nums大小。该方法的实现如
书痴熊
·
2024-02-10 05:02
代码随想录训练营
leetcode
算法
数据结构
LeetCode
—78.子集(Subsets)——分析及代码(C++)
LeetCode
—78.子集[Subsets]——分析及代码[C++]一、题目二、分析及代码1.回溯法(1)思路(2)代码(3)结果2.层序遍历(1)思路(2)代码(3)结果三、其他一、题目给定一组不含重复元素的整数数组
江南土豆
·
2024-02-10 05:02
数据结构与算法
LeetCode
C++
题解
leetcode
81搜索旋转排序数组2 C++
利用二分查找1.左半部分增序,target在左边则进行二分查找。2.右半部分增序,target在右边则进行二分查找。classSolution{public:boolsearch(vector&nums,inttarget){intstart=0,end
吉野原
·
2024-02-10 05:32
leetcode刷题记录
c++
leetcode
leetcode
34 在排序数组中查找元素的第一个和最后一个位置
文章目录1.解法2.原题[34.在排序数组中查找元素的第一个和最后一个位置](https://
leetcode
.cn/problems/find-first-and-last-position-of-element-in-sorted-array
南方乌鸦
·
2024-02-10 05:31
算法
数据结构
leetcode
leetcode
154 寻找旋转排序数组中的最小值 II
文章目录1.解法2.原题[154.寻找旋转排序数组中的最小值II](https://
leetcode
.cn/problems/find-minimum-in-rotated-sorted-array-ii
南方乌鸦
·
2024-02-10 05:31
算法
数据结构
leetcode
LeetCode
-78-Subset
算法描述:Givenasetofdistinctintegers,nums,returnallpossiblesubsets(thepowerset).Note:Thesolutionsetmustnotcontainduplicatesubsets.Example:Input:nums=[1,2,3]Output:[[3], [1], [2], [1,2,3], [1,3], [2,3], [1
weixin_33739523
·
2024-02-10 05:01
数据结构与算法
LeetCode
78-子集详解
往期博客:
Leetcode
1-两数之和详解
Leetcode
2-两数相加代码详解
Leetcode
20-有效的括号详解
Leetcode
21-合并两个有序链表详解
Leetcode
22-有效括号生成详解
Leetcode
24
白羊by
·
2024-02-10 05:01
力扣算法题-python
数据结构
Leetcode
python
算法
回溯
leetcode
69 x 的平方根
文章目录1.解法二分法牛顿迭代2.原题[69.x的平方根](https://
leetcode
.cn/problems/sqrtx/)1.解法二分法题目变形为找到f(x)=x2−c=0f(x)=x^2-c
南方乌鸦
·
2024-02-10 05:01
算法
leetcode
LeetCode
81. 搜索旋转排序数组 II
//C++最简洁的二分法分类讨论//每次二分,左半部分和右半部分至少有一边是有序的,以此为条件可以分成两种情况://1、左半边是有序的//(1)target落在左半边//(2)otherwise//2、右半边是有序的//(1)target落在右半边//(2)otherwise//综上所述,一共两种可能性,这两种情况各自又有两种可能性,代码如下:publicstaticbooleansearch(i
渣一个
·
2024-02-10 05:00
算法
LeetCode
81.
搜索旋转排序数组
II
Leetcode
81搜索旋转排序数组II
思路:二分法。参考http://www.cnblogs.com/grandyang/p/4325840.html。classSolution{public:boolsearch(vector&nums,inttarget){intn=nums.size();if(n==0)returnfalse;intleft=0,right=n-1;while(left=target)left=mid+1;el
spark-meng
·
2024-02-10 05:30
(
LeetCode
78)子集 回溯法求解
(
LeetCode
78)子集回溯法求解回溯法回溯法定义(来自百度百科):回溯法(探索与回溯法)是一种选优搜索法,又称为试探法,按选优条件向前搜索,以达到目标。
Mark. ML
·
2024-02-10 05:30
算法
LeetCode
78_子集(三种解法)
1.题目给你一个整数数组nums,数组中的元素互不相同。返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。你可以按任意顺序返回解集。示例1:输入:nums=[1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]示例2:输入:nums=[0]输出:[[],[0]]提示:1List[List[int]]:result=[]result.appe
高压锅_1220
·
2024-02-10 05:30
LeetCode
利用python 完成
leetcode
81 搜索旋转排序数组 II
假设按照升序排序的数组在预先未知的某个点上进行了旋转。(例如,数组[0,0,1,2,2,5,6]可能变为[2,5,6,0,0,1,2])。编写一个函数来判断给定的目标值是否存在于数组中。若存在返回true,否则返回false。示例1:输入:nums=[2,5,6,0,0,1,2],target=0输出:true示例2:输入:nums=[2,5,6,0,0,1,2],target=3输出:false
找到工作之前每天坚持
·
2024-02-10 05:00
leetcode
leetcode
中等
leetcode
python
算法
leetcode
.78 子集
思路一:扩展法(暴力破解)任何集合的子集都存在空集,取出原子集进行一一的扩展,如图所示,每一步结果子集的变化过程取出原有子集放入新建集合中(防止引用传递),将元素存入新集合构成新的子集,再将新的子集放入结果子集中【扩展结果子集】这种解法适合不重复子集的情况(【1,2】【2,1】为相同子集)代码实现如下:classSolution{publicList>subsets(int[]nums){List
qq_40396568
·
2024-02-10 05:00
leetcode
leetcode
-78-子集(中等)
78.子集(中等)给你一个整数数组nums,数组中的元素互不相同。返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。你可以按任意顺序返回解集。示例1:输入:nums=[1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]示例2:输入:nums=[0]输出:[[],[0]]思路:位运算回溯法迭代跟据每个元素在或者不在两种状态去区分1、C++位
滴沥哒哒
·
2024-02-10 05:00
leetcode
LeetCode
81 搜索旋转排序数组 II(二分)
题目链接:
leetcode
81题面题面大意33题的延伸,略解题思路二分和154优化153的一样,当不能确定是左区间还是右区间时,把区间长度减一。
小胡同的诗
·
2024-02-10 05:59
二分法
leetcode
78. 子集
题目描述:给你一个整数数组nums,数组中的元素互不相同。返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。你可以按任意顺序返回解集。示例:输入:nums=[1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]题解1(回溯法):难点在于如何能够遍历出所有结果!答案是由递归的终止条件决定!对于数组就采用以长度为条件的方式去递归。用回溯法解决。
Rolandxxx
·
2024-02-10 05:29
刷题
leetcode
算法
职场和发展
LeetCode
81 搜索旋转排序数组II(数组中含有重复的元素)
链接思考这道题是在
LeetCode
33题目的基础上进行提升的,关键是如何判断重复,当numd[middle]==nums[left]时的分支选择;当nums[left]==nums[middle]说明在
alex-zhou96
·
2024-02-10 05:29
leetcode刷题笔记
LeetCode
——78. 子集
78.子集题目给你一个整数数组nums,数组中的元素互不相同。返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。你可以按任意顺序返回解集。示例1:输入:nums=[1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]示例2:输入:nums=[0]输出:[[],[0]
HizT_1999
·
2024-02-10 04:59
LeetCode训练
leetcode
python
算法
Leetcode
78.子集 - Subset - Python - 回溯法
解题思路:1.本题不需要剪枝,因为要遍历树的每一个节点,并将当前经过的节点路径path都记录下来,每一个path都是子集。2.此题可以不写终止递归条件,因为在for循环中,遍历完就自己结束了。注意事项:1.注意for循环中,每次递归是i+1,而不是start+1代码:classSolution(object):path=[]result=[]defsubsets(self,nums):self.r
princey2100
·
2024-02-10 04:58
算法
数据结构
leetcode
python
leetcode
81 搜索旋转排序数组 II
文章目录1.解法2.原题[81.搜索旋转排序数组II](https://
leetcode
.cn/problems/search-in-rotated-sorted-array-ii/)1.解法使用二分查找
南方乌鸦
·
2024-02-10 04:58
算法
数据结构
leetcode
LeetCode
81 搜索旋转排序数组II HERODING的
LeetCode
之路
已知存在一个按非降序排列的整数数组nums,数组中的值不必互不相同。在传递给函数之前,nums在预先未知的某个下标k(0&nums,inttarget){if(nums.size()==1)returnnums[0]==target;intleft=0,right=nums.size()-1;while(lefttarget){right=mid-1;}else{left=mid+1;}}else
HERODING77
·
2024-02-10 04:58
LeetCode
二分法
leetcode
算法
c++
数据结构
分治法求解最大子数组和问题
leetcode
5353.最大子数组和给你一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组是数组中的一个连续部分。
行走的透明人
·
2024-02-10 04:22
算法
数据结构
c语言
leetcode
1921
消灭的怪物数量踩坑点:double类型的比较,C语言有qsort的排序函数,需要设计比较函数,double类型的数据存在精度问题,不能直接用==号判断数据是否相等,需要通过设置精度eps。intcmp(constvoid*val1,constvoid*val2){doublea=*((double*)val1);doubleb=*((double*)val2);constdoubleeps=1e-
行走的透明人
·
2024-02-10 04:21
leetcode
算法
职场和发展
leetcode
236 二叉树的最近公共祖先
二叉树的最近公共祖先使用dfs求解,根据返回值判断是否存在节点。返回值如果是空,表明当前子树不存在p或q。把p和q分为两种情况,一种是在p或q在当前节点,或者p或q分别在当前节点的左右子树上。如果当前节点是p或者q,返回当前节点。structTreeNode*lowestCommonAncestor(structTreeNode*root,structTreeNode*p,structTreeNo
行走的透明人
·
2024-02-10 04:49
leetcode
算法
职场和发展
【力扣白嫖日记】SQL
前言练习sql语句,所有题目来自于力扣(https://
leetcode
.cn/problemset/database/)的免费数据库练习题。
Gary.Li
·
2024-02-10 04:44
力扣刷题
leetcode
sql
数据库
上一页
31
32
33
34
35
36
37
38
下一页
按字母分类:
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
其他