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
热题100刷题计划
二叉树的最近公共祖先题目思路哈哈,做不出来。思路来自大佬终止条件如果root为空,则直接返回如果p,q指向同一结点,直接返回p如果p,q任意一个和root相同,直接返回根递归去根节点左侧递归,返回值为left;去根节点右侧递归,返回值为right返回值如果都为空,则证明没有公共祖先,返回null如果左侧为空,则返回右侧right;证明p,q全在右侧子树上如果右侧为空,则返回左侧left,证明全在左
沐风御灵
·
2024-03-10 09:06
leetcode
学习
算法
leetcode
热题100刷题计划
零钱兑换题目思路这是一个完全背包问题材料是硬币,背包是和用动态规划来解确定dp数组含义令dp[i]为达成数额为i最少需要dp[i]个硬币确定递推公式对于dp[i]来说,假设当前兑换的硬币值为coin[j],那么dp[j]肯定可由dp[i-coin[j]]推出所以有dp[i]=min(dp[i-coin[j]],dp[i])确定初始化要求最小值,为防止小值被覆盖,初始化必须全部为最大值确定遍历顺序如
沐风御灵
·
2024-03-10 08:04
leetcode
算法
动态规划
LeetCode
-136-只出现一次的数字
示例1:输入:[2,2,1]输出:1示例2:输入:[4,1,2,1,2]输出:4来源:力扣(
LeetCode
)链接:https://
leetcode
-cn.com/problems/single-number
刻苦驴哝
·
2024-03-10 07:54
数字化沙龙观后感
收获是要把物流的一些具体场景转换成数学模型,然后再选择合适的算法算出
最优解
。
心水
·
2024-03-10 06:22
LeetCode
1. 两数之和。(通过JavaScript实现)
给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例1:输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]+nums[1]==9,返回[0,1]。示例2:输入:num
唧唧bong_
·
2024-03-09 22:22
leetcode
leetcode
javascript
算法
leetcode
刷题笔记
关于数组的一些用法数组排序Java中可以使用Arrays类的sort()方法对数组进行排序。Arrays.sort(arr);//调用Arrays类的sort()方法对数组进行排序关于ArrayList的用法将几个零散的数值转化为ArrayListArrays.asList(nums[i],nums[left],nums[right])关于map的一些用法Mapmap=newHashMap>ent
qq_43144487
·
2024-03-09 18:17
java
前端
javascript
动态规划
Leetcode
509 斐波那契数
斐波那契数
Leetcode
509学习记录自代码随想录斐波那契数(通常用F(n)表示)形成的序列称为斐波那契数列。该数列由0和1开始,后面的每一项数字都是前面两项数字的和。
mmaerd
·
2024-03-09 09:05
Leetcode刷题学习记录
动态规划
leetcode
算法
力扣算法刷题指南
109.ConvertSortedListtoBinarySearchTree·
leetcode
力扣上面的算法题目有很多,如果想要在短时间内快速提升的同学,可以刷热门100题,那个刷个4-5遍就可以应付过各个大厂的笔试题目了
whu_hy
·
2024-03-09 09:05
干货整理
leetcode
算法
面试
LeetCode
# 1333. 餐厅过滤器
1333.餐厅过滤器题目给你一个餐馆信息数组restaurants,其中restaurants[i]=[idi,ratingi,veganFriendlyi,pricei,distancei]。你必须使用以下三个过滤器来过滤这些餐馆信息。其中素食者友好过滤器veganFriendly的值可以为true或者false,如果为true就意味着你应该只包括veganFriendlyi为true的餐馆,为
蔚然丶丶
·
2024-03-09 05:00
题解
leetcode
算法
验证二叉搜索树(
leetcode
习题)
题目给你一个二叉树的根节点root,判断其是否是一个有效的二叉搜索树。思路设计一个递归函数helper(root,lower,upper)来递归判断,表示以root为根的子树,判断子树中的所有节点的值是否都在(l,r)的范围内(开区间)根据二叉搜索树的性质,在递归调用左子树时,需要把上界upper改为root.val,同理调用右子树时,需要把上界改为root.val/***Definitionfo
Benttto
·
2024-03-09 05:00
题目集
leetcode
算法
职场和发展
leetcode
热题100学习计划-二叉树-230二叉搜索树中第k小的元素
题目二叉搜索树中第k小的元素思路准备一个容器,对二叉树进行中序遍历,如果容器容量达到了k则退出递归,退出递归的条件如下如果当前遍历的结点为空,则返回如果当前已经达到了k,则返回代码classSolution{publicListmynode=newLinkedList<>();publicintkthSmallest(TreeNoderoot,intk){midsearch(root,k);ret
沐风御灵
·
2024-03-09 02:27
leetcode
学习
算法
LeetCode
206题:反转链表(python3)
采用递归classSolution:defreverseList(self,head:Optional[ListNode])->Optional[ListNode]:cur=headpre=Nonewhilecur:temp=cur.next#保存下一轮循环的节点cur.next=pre#将当前节点cur的指针指向上一个节点prepre=curcur=tempreturnpre
Zachos
·
2024-03-09 02:26
银河骑士每日一练
链表
数据结构
算法
python
leetcode
热题100学习计划-动态规划-300最长递增子序列
题目最长递增子序列思路动态规划思想,设dp[i]为以nums[i]为结尾的最长递增子序列的长度。dp[i]任何情况下都至少为1,所以dp数组初始化全为1那么递推公式是什么,只要比nums[i]小的数,都满足提议因此,有dp[i]=Math.max(dp[i],dp[j]+1);j从0到i-1dp数组的最大值就是所求值代码if(nums.length==0){return0;}int[]dp=new
沐风御灵
·
2024-03-09 02:56
leetcode
学习
动态规划
【
Leetcode
】150. 逆波兰表达式求值
今天做了一道
leetcode
,题目不算难,基本就是stack的入栈出栈,但我看了一圈别人的代码,感觉不够优雅,所以我想分享一下自己的写法,主要就是用Map和BiFunction优化4个ifelseJava
飞哥不鸽
·
2024-03-08 23:52
leetcode
150
Function
BiFunction
【
LeetCode
】389_找不同_C
https://
leetcode
.cn/problems/find-the-difference/description/示例示例1:输入:s="abcd",t="abcde"输出:"e"解释:'e'是那个被添加的字母
长白秋沙
·
2024-03-08 21:20
算法刷题笔记
算法刷题
Leetcode
3.7
Leetcode
hot100二分查找1.搜索插入位置2.二分查找3.搜索二维矩阵4.在排序数组中查找元素的第一个和最后一个位置5.搜索旋转排序数组Question二分查找1.搜索插入位置搜索插入位置考虑这个插入的位置
精品西红柿
·
2024-03-08 17:42
leetcode
算法
职场和发展
计算阶乘后的0
refer:https://
leetcode
.cn/problems/factorial-trailing-zeroes/description/?
许墨の小蝴蝶
·
2024-03-08 16:11
算法
leetcode
-快速排序法和冒泡排序法
冒泡排序视频讲解快速排序视频动画演示#include#includeusingnamespacestd;//1.quickSort(arr,0,n-1);注意函数调用是左闭右闭区间,所以递归调用的两次也是左闭右闭voidquickSort(std::vector&arr,intlow,inthigh){if(low&arr){intn=arr.size();for(inti=0;iarr={1,1
浦东新村轱天乐
·
2024-03-08 15:40
leetcode
leetcode
算法
排序算法
leetcode
337. 打家劫舍 III
337.打家劫舍III在上次打劫完一条街道之后和一圈房屋后,小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为“根”。除了“根”之外,每栋房子有且只有一个“父“房子与之相连。一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。如果两个直接相连的房子在同一天晚上被打劫,房屋将自动报警。计算在不触动警报的情况下,小偷一晚能够盗取的最高金额。示例1:输入:[3,2
Elon0
·
2024-03-08 02:24
LeetCode
leetcode
(力扣) 55. 跳跃游戏 (贪心 & 动态规划)
文章目录题目描述思路分析贪心思路:动态规划思路:完整代码题目描述给定一个非负整数数组nums,你最初位于数组的第一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标。示例1:输入:nums=[2,3,1,1,4]输出:true解释:可以先跳1步,从下标0到达下标1,然后再从下标1跳3步到达最后一个下标。示例2:输入:nums=[3,2,1,0,4]输出:fal
深度不学习!!
·
2024-03-08 00:51
个人笔记
交流学习
leetcode
python
算法D39 | 动态规划2 | 62.不同路径 63. 不同路径 II
|
LeetCode
:62.不同路径_哔哩哔哩_bilibili这个题看到路径的表示,第一直觉就是一个组合数的问题,学了一下C++计算组合数防止溢出的小技巧。
memolaner
·
2024-03-07 17:11
算法训练营
算法
动态规划
数据结构
c++
python
leetcode
2917.找出数组中的K-or值
说实话这道题就是阅读题。虽然作者本题写的并不怎么简单,但是思路还是很清楚的。思路:通过题目我们就可以知道,本质上就是算出这个数的二进制,然后在二进制中找到各位有多少1的题目而已。intn=nums.size();intarr[51][32];for(inti=0;i=k,那么我们直接储存这里的坐标i,否则继续循环。最后退出循环整个结束之后,我们就按照题目所给的方式求解最终的数就行了。classSo
是小Y啦
·
2024-03-07 16:09
leetcode
算法
数据结构
LeetCode
每日一题 汇总区间(区间)
题目描述给定一个无重复元素的有序整数数组nums。返回恰好覆盖数组中所有数字的最小有序区间范围列表。也就是说,nums的每个元素都恰好被某个区间范围所覆盖,并且不存在属于某个范围但不属于nums的数字x。列表中的每个区间范围[a,b]应该按如下格式输出:"a->b",如果a!=b"a",如果a==b示例1:输入:nums=[0,1,2,4,5,7]输出:["0->2","4->5","7"]解释:
南瓜小米粥、
·
2024-03-07 05:26
leetcode
算法
数据结构
算法题合集(细分知识点附链接)---------第二部分【融合牛客及力扣】
根据二叉树创建字符串102.二叉树的层序遍历236.二叉树的最近公共祖先JZ36二叉搜索树与双向链表105.从前序与中序遍历序列构造二叉树动态规划JZ42连续子数组的最大和图137.只出现一次的数字IIhttps://
leetcode
.cn
FreedanyTsui
·
2024-03-07 02:52
各种算法题
算法
【
Leetcode
每日一题】二分查找 - 寻找峰值(难度⭐⭐)(20)
1.题目解析
Leetcode
链接:162.寻找峰值这个问题的理解其实相当简单,只需看一下示例,基本就能明白其含义了。核心在于找到题目中所说的峰值并返回他们的下标即可。
每天进步亿丢丢
·
2024-03-06 16:40
算法
leetcode每日一题
leetcode
算法
职场和发展
代码随想录算法训练营Day34 ||
leetCode
860.柠檬水找零 || 406.根据身高重建队列 || 452. 用最少数量的箭引爆气球
860.柠檬水找零贪心的思路就是,先把最没用的钱给找出去。本题中,20元没法花出去,只有10和5能找零,但10只能找零20,而5可以找零10与20,所以就想办法把10先花出去即可。之后按照收入顺序来记录钱数并选择找零。如果某次钱的数目变为负数,则说明无法找零,输出错误。classSolution{public:boollemonadeChange(vector&bills){intfive=0,t
qq_44884699
·
2024-03-06 10:34
leetcode
算法
职场和发展
代码随想录算法训练营Day20 ||
leetCode
530.二叉搜索树的最小绝对差 || 501.二叉搜索树中的众数 || 236. 二叉树的最近公共祖先
530.二叉搜索树的最小绝对差最简单的思路为中序遍历,然后遍历数组求差值。classSolution{private:voidtraversal(TreeNode*root,vector&vec){if(root==NULL)return;traversal(root->left,vec);vec.push_back(root->val);//将二叉搜索树转换为有序数组traversal(root
qq_44884699
·
2024-03-06 10:04
算法
leetcode
职场和发展
代码随想录算法训练营Day4|
leetCode
24. 两两交换链表中的节点、19.删除链表的倒数第N个节点、 面试题 02.07. 链表相交、 142.环形链表II
24.两两交换链表中的节点开始写的代码总有一些问题,对比答案之后发现自己少设置了一个变量,(此前想偷懒,把cur和head融合到一块了)。此题我出现的问题,还有一点在于自己忘了指针的作用了,一直奇怪head节点改变后,为什么dummyhead->next依然正确classSolution{public:ListNode*swapPairs(ListNode*head){ListNode*dummy
qq_44884699
·
2024-03-06 10:34
算法
leetcode
链表
代码随想录算法训练营Day37|738.单调递增的数字、968.监控二叉树
LeetCode
:738.单调自增的数字C++实现classSolution{public:intmonotoneIncreasingDigits(intn){stringnum=to_string(n
Magical_Jason
·
2024-03-06 09:33
算法训练
算法
力扣爆刷第85天之hot100五连刷11-15
文章目录力扣爆刷第85天之hot100五连刷11-15一、239.滑动窗口最大值二、76.最小覆盖子串三、53.最大子数组和四、56.合并区间五、189.轮转数组一、239.滑动窗口最大值题目链接:https://
leetcode
.cn
当年拼却醉颜红
·
2024-03-06 01:23
力扣算法题
leetcode
算法
职场和发展
leetcode
673.最长递增子序列的个数
上一题只需要知道最长递增子序列的长度就行了,那样的话直接一个dp就完事了,但是呢,这里说了需要记录这个最长长度递增子序列的个数,这下的话,如果你想用原先的思路,其实可以,但是要能做到计数的话,需要你再定义一个数组cnt用来记录以nums[i]为尾的最长子序列个数。思路:首先我们根据最长递增子序列的思路,知道dp是用来记录以nums[i]为尾的最长子序列长度的,那么我们要在动态规划实现递推的同时实现
是小Y啦
·
2024-03-06 00:22
leetcode
算法
动态规划
重拾C++之菜鸟刷算法第8篇---二叉树(中)
101.对称二叉树-力扣(
LeetCode
)题解------递归法递归函数的参数设置:左右节点之间的比较,这里并不是左右子树的比较哦。
阿卡西番茄酱
·
2024-03-05 18:42
C++算法
c++
算法
开发语言
LeetCode
2810.故障键盘
你的笔记本键盘存在故障,每当你在上面输入字符‘i’时,它会反转你所写的字符串。而输入其他字符则可以正常工作。给你一个下标从0开始的字符串s,请你用故障键盘依次输入每个字符。返回最终笔记本屏幕上输出的字符串。示例1:输入:s=“string”输出:“rtsng”解释:输入第1个字符后,屏幕上的文本是:“s”。输入第2个字符后,屏幕上的文本是:“st”。输入第3个字符后,屏幕上的文本是:“str”。因
吃着火锅x唱着歌
·
2024-03-05 16:40
LeetCode
leetcode
算法
职场和发展
leetcode
第 205 场周赛
给你一个仅包含小写英文字母和‘?’字符的字符串s,请你将所有的'?'转换为若干小写字母,使最终的字符串不包含任何连续重复的字符。注意:你不能修改非‘?’字符。题目测试用例保证除'?'字符之外,不存在连续重复的字符。在完成所有转换(可能无需转换)后返回最终的字符串。如果有多个解决方案,请返回其中任何一个。可以证明,在给定的约束条件下,答案总是存在的。publicStringmodifyString(
jan1235
·
2024-03-05 13:36
leetcode周赛
leetcode
java
LeetCode
第 204 场周赛
5499.重复至少K次且长度为M的模式垃圾题解略垃圾代码classSolution:defcontainsPattern(self,arr:List[int],m:int,k:int)->bool:print('ohhh')n=len(arr)ifm*k>n:returnFalseforiinrange(n-m+1):a=arr[i:i+m]c=1j=i+mwhilej=k:returnTruer
蟹恼板
·
2024-03-05 13:06
刷题
leetcode
算法
数据结构
dfs
二叉树
Leetcode
3070. Count Submatrices with Top-Left Element and Sum Less Than k
Leetcode
3070.CountSubmatriceswithTop-LeftElementandSumLessThank1.解题思路2.代码实现题目链接:3070.CountSubmatriceswithTop-LeftElementandSumLessThank1
Espresso Macchiato
·
2024-03-05 06:28
leetcode笔记
leetcode
3070
leetcode周赛387
leetcode
medium
二维累积数组
leetcode题解
leetcode
51 N皇后问题
https://programmercarl.com/0051.N%E7%9A%87%E5%90%8E.html代码随想录讲的很清楚。回溯法从上到下按行搜索,因此back_tracking(chessboard,row+1)其参数为row+1判断该位置是否符合终止条件是i==nclassSolution{public://vectorpath_;vector>res_;boolvalid(vect
浦东新村轱天乐
·
2024-03-05 01:52
leetcode
算法
数据结构
LeetCode
148.排序链表
题目给你链表的头结点head,请将其按升序排列并返回排序后的链表。示例输入:head=[4,2,1,3]输出:[1,2,3,4]输入:head=[-1,5,3,4,0]输出:[-1,0,3,4,5]输入:head=[]输出:[]思路对于链表排序我们可以使用链表的归并排序(MergeSort)算法。下面是整体的思路:归并排序的核心思想:归并排序是一种分治算法,首先将待排序的链表分成两部分,然后分别对
Stephen_Curry___
·
2024-03-05 00:49
链表
数据结构
leetcode
算法
c++
回文链表(
leetcode
)
我自己第一个写的代码:boolisPalindrome(structListNode*head){structListNode*tail=NULL;structListNode*pos=NULL;if(head->next==NULL){returntrue;}while(1){if(head->next==NULL||(head->next->next==NULL&&head->val==hea
wx20041102
·
2024-03-04 18:43
链表
leetcode
linux
【
leetcode
热题】分割回文串
-力扣(
LeetCode
)题目描述给定一个字符串s,将s分割成一些子串,使每个子串都是回文串。返回s所有可能的分割方案。
kiugvui
·
2024-03-04 10:31
leetcode热题
leetcode
算法
职场和发展
【
LeetCode
-中等】209.长度最小的子数组-双指针/滑动窗口
力扣题目链接1.暴力解法这道题的暴力解法是两层嵌套for循环,第一层循环从i=0开始遍历至数组末尾,第二层循环从j=i开始遍历至找到总和大于等于target的连续子数组,并将该连续子数组的长度与之前找到的子数组长度相比较,若这个子数组长度更短,则更新结果。并将初始长度设置为INT32_MAX或nums.size()+1,用于判断是否不存在符合条件的子数组,通过判断结果是否被赋值,若未被赋值就返回0
qmkn
·
2024-03-04 07:27
LeetCode
leetcode
算法
滑动窗口
Leetcode
r Day33| 贪心算法part06+总结
738.单调递增的数字给定一个非负整数N,找出小于或等于N的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增。(当且仅当每个相邻位数上的数字x和y满足xres=newLinkedListInteger.compare(a[0],b[0]));intstart=intervals[0][0];intend=intervals[0][1];for(inti=1;iend){//不重叠res
恩爱鹿皮er
·
2024-03-03 02:19
Leetcode算法刷题记录
贪心算法
算法
leetcode
Java&C++题解与拓展——
leetcode
433.最小基因变化【A star学习、双向BFS(C++超时)、链式前向星(报错)】
每日一题做题记录,参考官方和三叶的题解目录题目要求思路一:BFSJavaC++思路二:双向BFSJavaC++思路三:A*Astar算法JavaC++思路四:建图+DFSJavaC++总结题目要求思路一:BFS找从startstartstart状态到endendend状态的最小步数;用哈希表存每个状态和步数;维护一个遍历队列,取队头元素curcurcur,依次替换每一位得到下一个可能状态,合法(出
AnjaVon
·
2024-03-02 23:16
leetcode
java
c++
学习
leetcode
代码随想录算法训练营第7天| 454. 四数相加 II、383. 赎金信、15. 三数之和、18. 四数之和
454.四数相加II题目链接454.四数相加II-力扣(
LeetCode
)思路这道题目的暴力解法是O(n^4),可以与两数之和一样使用哈希法解决,但是必要两个嵌套for循环了!
总系学不废
·
2024-03-02 13:30
代码随想录算法训练营刷题
算法
回溯
Leetcode
37 解数独
解数独
Leetcode
37学习记录自代码随想录编写一个程序,通过填充空格来解决数独问题。数独的解法需遵循如下规则:数字1-9在每一行只能出现一次。数字1-9在每一列只能出现一次。
mmaerd
·
2024-03-02 05:17
Leetcode刷题学习记录
leetcode
算法
职场和发展
LeetCode
刷题 [C++] 第670题.最大交换
题目描述给定一个非负整数,你至多可以交换一次数字中的任意两位。返回你能得到的最大值。示例1:输入:2736输出:7236解释:交换数字2和数字7。示例2:输入:9973输出:9973解释:不需要交换。注意:给定数字的范围是[0,108]。题目分析从左向右查看num:如果一个数字右边有比它大的数,则选择最大的数与之交换最优;如果存在多个相同的最大数字,则选择最靠后的那个与之交换最优;将右侧最大的数字
心之所向、力之所及
·
2024-03-02 01:42
leetcode
c++
java
贪心算法
LeetCode
2670.找出不同元素数目差数组
给你一个下标从0开始的数组nums,数组长度为n。nums的不同元素数目差数组可以用一个长度为n的数组diff表示,其中diff[i]等于前缀nums[0,…,i]中不同元素的数目减去后缀nums[i+1,…,n-1]中不同元素的数目。返回nums的不同元素数目差数组。注意nums[i,…,j]表示nums的一个从下标i开始到下标j结束的子数组(包含下标i和j对应元素)。特别需要说明的是,如果i>
吃着火锅x唱着歌
·
2024-03-02 01:42
LeetCode
leetcode
算法
数据结构
LeetCode
.148.排序链表(自顶向下递归,自底向上)
题目描述:来自
LeetCode
方法一:自顶向下+递归思路:因为要求(NlongN)时间复杂度,可能会想到二分,归并等排序方法,这里对链表的合并,因为不是有序,所以用归并比较合适。
头发没了还会再长
·
2024-03-02 01:41
leetcode
链表
算法
递归
归并排序
Leetcode
583. 两个字符串的删除操作 -代码随想录
题目:代码(首刷自解2024年2月29日):classSolution{public://动态规划好像和找最长公共子序列一样?intminDistance(stringword1,stringword2){intsz1=word1.size();intsz2=word2.size();//dpinitvector>dp(sz1+1,vector(sz2+1,0));for(inti=0;i<=sz
meeiuliuus
·
2024-03-01 16:29
#
leetcode
---medium
算法
动态规划
c++
leetcode
【力扣白嫖日记】570.至少有5名直接下属的经理
前言练习sql语句,所有题目来自于力扣(https://
leetcode
.cn/problemset/database/)的免费数据库练习题。
Gary.Li
·
2024-03-01 16:59
力扣刷题
leetcode
数据库
sql
上一页
10
11
12
13
14
15
16
17
下一页
按字母分类:
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
其他