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
刷题笔记题解(C++):2266. 统计打字方案数
classSolution{public:intcountTexts(stringpressedKeys){intm=1000000007;vectordp3={1,1,2,4};vectordp4={1,1,2,4};intn=pressedKeys.size();for(inti=4;i
Demo.demo
·
2024-02-08 17:46
Leetcode算法题解
leetcode
笔记
c++
Leetcode
刷题笔记题解(C++):64. 最小路径和
思路一:dfs深度优先搜索,然后取最小路径值,但是时间消耗较大,时间复杂度可能不满足,代码如下:classSolution{public:intres=1000000;introws,cols;intminPathSum(vector>&grid){rows=grid.size();cols=grid[0].size();dfs(grid,0,0,0);returnres;}voiddfs(vec
Demo.demo
·
2024-02-08 17:45
Leetcode算法题解
leetcode
笔记
c++
二叉树的堂兄弟节点 II - 力扣(
LeetCode
)
题目描述给你一棵二叉树的根root,请你将每个节点的值替换成该节点的所有堂兄弟节点值的和。如果两个节点在树中有相同的深度且它们的父节点不同,那么它们互为堂兄弟。请你返回修改值之后,树的根root。注意,一个节点的深度指的是从树根节点到这个节点经过的边数。题目示例输入:root=[5,4,9,1,10,null,7]输出:[0,0,0,7,7,null,11]解释:上图展示了初始的二叉树和修改每个节
maybe_za
·
2024-02-08 16:32
leetcode
算法
广度优先搜索
二叉树
对称二叉树 - 力扣(
LeetCode
)
题目描述给你一个二叉树的根节点root,检查它是否轴对称。题目示例输入:root=[1,2,2,3,4,4,3]输出:true解题思路首先想清楚,判断对称二叉树要比较的是哪两个节点,要比较的可不是左右节点!对于二叉树是否对称,要比较的是根节点的左子树与右子树是不是相互翻转的,理解这一点就知道了其实我们要比较的是两个树(这两个树是根节点的左右子树),所以在递归遍历的过程中,也是要同时遍历两棵树。比较
maybe_za
·
2024-02-08 16:32
leetcode
算法
二叉树的堂兄弟节点 - 力扣(
LeetCode
)
题目描述在二叉树中,根节点位于深度0处,每个深度为k的节点的子节点位于深度k+1处。如果二叉树的两个节点深度相同,但父节点不同,则它们是一对堂兄弟节点。我们给出了具有唯一值的二叉树的根节点root,以及树中两个不同节点的值x和y。只有与值x和y对应的节点是堂兄弟节点时,才返回true。否则,返回false。题目示例输入:root=[1,2,3,4],x=4,y=3输出:false解题思路广度优先搜
maybe_za
·
2024-02-08 16:32
leetcode
深度优先
算法
LeetCode
《程序员面试金典》面试题 03.06. 动物收容所
LeetCode
面试题03.06.动物收容所题目解题解题一解题二解题三题目“最老”可以用编号来比较,编号越小,代表越老,题目已经给了动物编号,如果没有需要自己创建编号或者记录时间戳。"
La vie est belle❤️
·
2024-02-08 16:02
程序员面试金典
leetcode
算法
数据结构
链表
stack
力扣
leetcode
每日一题 222. 完全二叉树的节点个数
别问,问就是dfsclassSolution{public:intcountNodes(TreeNode*root){if(root==NULL
一头特立独行的驴
·
2024-02-08 16:01
力扣题目
二叉树
leetcode
算法
LeetCode
222. 完全二叉树的节点个数
1题目描述给你一棵完全二叉树的根节点root,求出该树的节点个数。完全二叉树的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第h层,则该层包含1~2h个节点。示例1:输入:root=[1,2,3,4,5,6]输出:6示例2:输入:root=[]输出:0示例3:输入:root=[1]输出:1来源:力扣(L
Alfred_XiaJL
·
2024-02-08 16:01
算法
leetcode
算法
完全二叉树的节点个数
完全二叉树的节点个数 - 力扣(
LeetCode
)
题目描述给你一棵完全二叉树的根节点root,求出该树的节点个数。完全二叉树的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第h层,则该层包含1~2h个节点。题目示例输入:root=[1,2,3,4,5,6]输出:6解题思路在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面
maybe_za
·
2024-02-08 16:27
leetcode
算法
数据结构
2021/01/04 每日一题 斐波那契数
LeetCode
上斐波那契数,简单难度重拳出击,记录下解题思路反正斐波那契数前三位是固定的011,直接给定个前3个数的数组,然后后面循环出整个数列,并且返回对应位置的数,利用了缓存。
Taec0123
·
2024-02-08 15:56
leetCode
二叉树的堂兄弟节点
题目描述在二叉树中,根节点位于深度0处,每个深度为k的节点的子节点位于深度k+1处。如果二叉树的两个节点深度相同,但父节点不同,则它们是一对堂兄弟节点。我们给出了具有唯一值的二叉树的根节点root,以及树中两个不同节点的值x和y。只有与值x和y对应的节点是堂兄弟节点时,才返回true。否则,返回false。示例1:输入:root=[1,2,3,4],x=4,y=3输出:false示例2:输入:ro
望 望
·
2024-02-08 14:10
leetcode
算法
【双端队列】【维护单调队列】
Leetcode
239 滑动窗口最大值【难】
【双端队列】
Leetcode
239滑动窗口最大值双端队列的操作解法1利用双端队列实现单调队列---------------题目链接
Leetcode
239滑动窗口最大值------------------
苹果就叫不呐呐
·
2024-02-08 14:18
Leetcode
leetcode
算法
数据结构
java
职场和发展
【优先级队列(大顶堆 小顶堆)】【遍历哈希表键值对】
Leetcode
347 前K个高频元素
【优先级队列(大顶堆小顶堆)】【排序】
Leetcode
347前K个高频元素1.不同排序法归纳2.大顶堆和小顶堆3.PriorityQueue操作4.PriorityQueue的升序(默认)与降序5.问题解决
苹果就叫不呐呐
·
2024-02-08 14:18
Leetcode
散列表
leetcode
数据结构
java
算法
开发语言
【栈】【字符串和int类型转化】
Leetcode
150 逆波兰表达式求值
【栈】【字符串和int类型转化】
Leetcode
150逆波兰表达式求值解法1栈---------------题目链接
Leetcode
150逆波兰表达式求值-------------------解法1栈字符串转化为
苹果就叫不呐呐
·
2024-02-08 14:48
Leetcode
leetcode
算法
java
职场和发展
程序人生
【递归】【前序中序后序遍历】【递归调用栈空间与二叉树深度有关】【斐波那契数】
Leetcode
94 144 145
【递归】【前序中序后序遍历】【递归调用栈空间与二叉树深度有关】
Leetcode
941441451.前序遍历(递归)preorder2.中序遍历(递归)inorder3.后序遍历(递归)postorder4
苹果就叫不呐呐
·
2024-02-08 14:44
Leetcode
leetcode
算法
职场和发展
排序算法
java
代码随想录
Leetcode
46. 全排列
题目:代码(首刷自解2024年2月6日):classSolution{private:vector>res;vectorpath;public:voidbacktracking(vector&nums,intdepth,vector&used){if(depth==nums.size()){res.push_back(path);return;}for(inti=0;i>permute(vecto
meeiuliuus
·
2024-02-08 14:44
#
leetcode
---medium
前端
算法
javascript
leetcode
2641.二叉树的堂兄弟的节点
题目链接2641.二叉树的堂兄弟节点II-力扣(
LeetCode
)解题思路题目要求将二叉树中每个节点的值都替换成所有堂兄弟节点和,而堂兄弟节点就是指那些和当前节点深度相同,但是父节点不同的节点。
杜阿福
·
2024-02-08 13:02
算法
leetcode
-hot100树的专题
230.二叉搜索树中的第K小的元素题目链接230.二叉搜索树中第K小的元素-力扣(
LeetCode
)解题思路#Definitionforabinarytreenode.
杜阿福
·
2024-02-08 13:32
leetcode
算法
职场和发展
二叉树专题
二叉树遍历题目链接94.二叉树的中序遍历-力扣(
LeetCode
)解题思路#Definitionforabinarytreenode.
杜阿福
·
2024-02-08 13:02
python
[每日一题]141.Linked List Cycle(链表)
链接:https://
leetcode
.com/problems/linked-list-cycle/141.LinkedListCycle.png题目的意思就是输入一个链表,然后判断链表是否构成了环状结构
何学诚
·
2024-02-08 13:00
Leetcode
2841. 几乎唯一子数组的最大和
Everydaya
Leetcode
题目来源:2841.几乎唯一子数组的最大和解法1:滑动窗口看到「长度固定的子数组」就要想到滑动窗口。
UestcXiye
·
2024-02-08 12:51
Every
day
a
LeetCode
C++
数据结构与算法
leetcode
滑动窗口
哈希
Leetcode
2840. 判断通过操作能否让字符串相等 II
Everydaya
Leetcode
题目来源:2840.判断通过操作能否让字符串相等II解法1:哈希用两个哈希表cnt1和cnt2分别统计字符串s1和s2奇偶下标的字符的出现次数。
UestcXiye
·
2024-02-08 12:50
Every
day
a
LeetCode
哈希算法
散列表
算法
C++
leetcode
Leetcode
第 382 场周赛题解
Leetcode
第382场周赛题解
Leetcode
第382场周赛题解题目1:3019.按键变更的次数思路代码复杂度分析题目2:3020.子集中元素的最大数量思路代码复杂度分析题目3:3021.Alice
UestcXiye
·
2024-02-08 12:20
Every
day
a
LeetCode
leetcode
C++
数据结构与算法
双指针
哈希
数学
位运算
Leetcode
3020. 子集中元素的最大数量
Everydaya
Leetcode
题目来源:3020.子集中元素的最大数量解法1:哈希+枚举用一个哈希表统计数组nums中的元素及其出现次数。
UestcXiye
·
2024-02-08 12:19
Every
day
a
LeetCode
leetcode
C++
数据结构与算法
枚举
哈希
[
leetcode
] 29. 两数相除
文章目录题目描述解题方法倍增java代码复杂度分析题目描述给你两个整数,被除数dividend和除数divisor。将两数相除,要求不使用乘法、除法和取余运算。整数除法应该向零截断,也就是截去(truncate)其小数部分。例如,8.345将被截断为8,-2.7335将被截断至-2。返回被除数dividend除以除数divisor得到的商。注意:假设我们的环境只能存储32位有符号整数,其数值范围是
会飞的大鱼人
·
2024-02-08 12:10
leetcode
算法
java
数据结构
[
leetcode
] 30. 串联所有单词的子串
文章目录题目描述解题方法滑动窗口java代码复杂度分析相似题目题目描述给定一个字符串s和一个字符串数组words。words中所有字符串长度相同。s中的串联子串是指一个包含words中所有字符串以任意顺序排列连接起来的子串。例如,如果words=["ab","cd","ef"],那么"abcdef","abefcd","cdabef","cdefab","efabcd",和"efcdab"都是串联
会飞的大鱼人
·
2024-02-08 12:10
leetcode
算法
java
数据结构
[
leetcode
] 28. 找出字符串中第一个匹配项的下标
文章目录题目描述解题方法方法一:双指针java代码复杂度分析方法二:KMP算法java代码复杂度分析题目描述给你两个字符串haystack和needle,请你在haystack字符串中找出needle字符串的第一个匹配项的下标(下标从0开始)。如果needle不是haystack的一部分,则返回-1。示例1:输入:haystack="sadbutsad",needle="sad"输出:0解释:"s
会飞的大鱼人
·
2024-02-08 12:09
leetcode
算法
java
数据结构
[
leetcode
] 23. 合并 K 个升序链表
文章目录题目描述解题方法方法一:顺序合并java代码复杂度分析方法二:使用小根堆合并java代码复杂度分析相似题目题目描述给你一个链表数组,每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中,返回合并后的链表。示例1:输入:lists=[[1,4,5],[1,3,4],[2,6]]输出:[1,1,2,3,4,4,5,6]解释:链表数组如下:[1->4->5,1->3->4,2->6]将它
会飞的大鱼人
·
2024-02-08 12:39
链表
数据结构
leetcode
算法
java
[
leetcode
] 25. K 个一组翻转链表
文章目录题目描述解题方法方法一:迭代java代码复杂度分析相似题目题目描述给你链表的头节点head,每k个节点一组进行翻转,请你返回修改后的链表。k是一个正整数,它的值小于或等于链表的长度。如果节点总数不是k的整数倍,那么请将最后剩余的节点保持原有顺序。你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。示例1:输入:head=[1,2,3,4,5],k=2输出:[2,1,4,3,5]示例
会飞的大鱼人
·
2024-02-08 12:39
leetcode
链表
算法
java
数据结构
[
leetcode
] 31. 下一个排列
文章目录题目描述解题方法两遍扫描java代码复杂度分析题目描述整数数组的一个排列就是将其所有成员以序列或线性顺序排列。例如,arr=[1,2,3],以下这些都可以视作arr的排列:[1,2,3]、[1,3,2]、[3,1,2]、[2,3,1]。整数数组的下一个排列是指其整数的下一个字典序更大的排列。更正式地,如果数组的所有排列根据其字典顺序从小到大排列在一个容器中,那么数组的下一个排列就是在这个有
会飞的大鱼人
·
2024-02-08 12:08
leetcode
算法
数据结构
java
滑动窗口经典问题(算法村第十六关白银挑战)
最长字串专题无重复字符的最长子串3.无重复字符的最长子串-力扣(
LeetCode
)给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。
陈星泽SSR
·
2024-02-08 12:07
算法村
算法
堆与滑动窗口的结合(算法村第十六关黄金挑战)
滑动窗口最大值239.滑动窗口最大值-力扣(
LeetCode
)给你一个整数数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。
陈星泽SSR
·
2024-02-08 12:07
算法村
算法
leetcode
第206题反转链表❤
示例1:输入:head=[1,2,3,4,5]输出:[5,4,3,2,1]题目链接:力扣(
LeetCode
)官网-全球极客挚爱的技术成长平台二:解题思路这道题我们可以用迭代或递归地反转链表。
大鹏蓄力中
·
2024-02-08 11:35
链表
数据结构
LeetCode
简单题:53. 最大子序和(Python,C++,Java)
一.解法https://
leetcode
-cn.com/problems/maximum-subarray/要点:dp动态规划注意转移方程为v[i]=max(v[i-1]+nums[i],nums[i]
好莱坞守门员
·
2024-02-08 10:35
算法6:贪心
6.1分饼干
LeetCode
No.455问题描述:要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。
HYIndex
·
2024-02-08 09:29
【学习笔记】编码能力
基于
leetCode
题库分类,练习编码能力和算法1、语言基础知识汇总1.1c语言1.2c++1.3Makefile1.4汇编语言1.5python1.6shell1.7正则表达式1.8数据库2、基本2.1
踏流星
·
2024-02-08 09:00
学习
数据结构
算法
知识图谱
每日一题——
LeetCode
1417.重新格式化字符串
方法一个人方法:s里的字符只有小写字母和数字两种情况,我们可以把s里的字母和数字分隔成两个字符串,比较两个字符串的长度,只有当两个字符串的长度差值的绝对值为1或0才能满足题意。长度更长的要放在结果字符串的第一位,然后交替拼接。varreformat=function(s){letcharStr='',numStr='',resStr=''for(letcharofs){if(char>='a'&&
zbsnzj
·
2024-02-08 08:06
每日一题
javascript
leetcode
算法
每日一题——
LeetCode
1422.分割字符串的最大得分
方法一暴力枚举枚举所有分割点的情况,取最大得分varmaxScore=function(s){letres=0;constn=s.length;for(leti=1;imax){max=score0+score1}}returnmax};消耗时间和内存情况:
zbsnzj
·
2024-02-08 08:06
每日一题
算法
javascript
leetcode
《剑指 Offer》专项突破版 - 面试题 35 : 最小时间差(两种方法 + C++ 实现)
目录前言一、排序二、数组前言题目链接:LCR035.最小时间差-力扣(
LeetCode
)题目:给定一组范围在00:00至23:59的时间,求任意两个时间之间的最小时间差(以分钟数表示)。
melonyzzZ
·
2024-02-08 07:59
数据结构
c++
算法
数据结构
面试
Leetcode
.303. 区域和检索 - 数组不可变
Leetcode
.303.区域和检索-数组不可变难度:easy思路:最容易想到的是通过for循环来扫描统计,但这样的话每次检索的时间复杂度都是O(n),检索次数很多的话效率不高。
Chamberlain T
·
2024-02-08 06:45
LeetCode
#
前缀和
#
数组
leetcode
算法
leetcode
-303 区域和检索 - 数组不可变 [Java]
类别:题目:法一:直接计算代码:classNumArray{int[]nums;publicNumArray(int[]nums){this.nums=nums;}publicintsumRange(intleft,intright){intsum=0;for(inti=left;i<=right;i++){sum+=nums[i];}returnsum;}}/***YourNumArrayobj
学习机器:
·
2024-02-08 06:45
leetcode-Code
java
leetcode
算法
LeetCode
491 递增序列
给定一个整型数组,你的任务是找到所有该数组的递增子序列,递增子序列的长度至少是2。示例:输入:[4,6,7,7]输出:[[4,6],[4,7],[4,6,7],[4,6,7,7],[6,7],[6,7,7],[7,7],[4,7,7]]说明:给定数组的长度不会超过15。数组中的整数范围是[-100,100]。给定数组中可能包含重复数字,相等的数字应该被视为递增的一种情况。和一般的去重不一致的是,由
whp404
·
2024-02-08 06:45
leetcode
算法
leetcode
71. Simplify Path
题目一开始想着用类似于split("\s+")这种的,发现没有,那就单个"/"划分吧,把空格的地方后期处理一下就行。因为StringBuilder的reverse是整个每个字符串都要翻转,所以要用到两个StackclassSolution{publicStringsimplifyPath(Stringpath){String[]str=path.split("/");Stackstack=newS
爱打篮球的憨憨
·
2024-02-08 06:45
leetcode
medium
leetcode
21:合并两个有序链表
解题思路首先创建一个dummy节点,这个节点用于返回目标链表。创建一个while循环。循环的终止体条件为l1、l2两个链表其中一个为null。循环内部逻辑:如果l1的值小于l2的值,就将current.next节点的值指向l1,且更新l1为l1.next,反之current.next取l2的值,且更新l2为l2.nextfunctionListNode(val,next){this.val=val
coder_MX
·
2024-02-08 06:15
leetcode
链表
javascript
leetcode
-单词规律
290.单词规律题解:可以使用哈希表来解决这个问题。首先,将pattern中的每个字符映射到一个不同的整数,然后将字符串s中的每个单词也映射到相应的整数。如果两个映射关系相同,则说明s遵循相同的规律。具体步骤如下:创建一个空的哈希表,用于存储pattern中的字符和字符串s中的单词之间的映射关系。遍历pattern,对于每个字符,将其映射到一个整数。可以使用一个计数器来生成唯一的整数。遍历字符串s
独孤--蝴蝶
·
2024-02-08 06:44
leetcode
leetcode
-3的幂
326.3的幂题解:要判断一个整数是否是3的幂次方,我们可以使用循环或递归的方法。首先,我们需要处理一些特殊情况,例如当n为0时,返回false;当n为1时,返回true。然后,我们可以通过不断地将n除以3来判断它是否是3的幂次方。如果在某一步中,n不能被3整除,那么n就不是3的幂次方。如果n最终变为1,那么它就是3的幂次方。classSolution:defisPowerOfThree(self
独孤--蝴蝶
·
2024-02-08 06:44
leetcode
leetcode
-Nim 游戏
292.Nim游戏题解:Nim游戏是一个数学问题,也被称为尼姆游戏。在这个问题中,两个人轮流从一堆石头中取走1-3块石头,谁最后取走最后一块石头,谁就获胜。如果给定的石头数量是4的倍数,那么先手的人就会输,否则就会赢。这是因为,无论先手的人怎么取,后手的人都可以采取最优策略,使得每次取走的石头数量总和为4,这样就能保证最后剩下的石头数量是4的倍数。所以,我们只需要判断给定的石头数量是否是4的倍数即
独孤--蝴蝶
·
2024-02-08 06:44
leetcode
leetcode
-移动零
283.移动零题解:使用双指针法(快慢指针),快指针指向的数字不为0的时候,将这个数字移到慢指针的地方,最后在后面补0即可classSolution:defmoveZeroes(self,nums:List[int])->None:"""Donotreturnanything,modifynumsin-placeinstead."""slow=0forfastinrange(len(nums)):
独孤--蝴蝶
·
2024-02-08 06:13
leetcode
LeetCode
- 303 区域和检索 - 数组不可变 (设计 前缀和数组)
classNumArray{privateint[]preSum;publicNumArray(int[]nums){intn=nums.length;preSum=newint[n+1];for(inti=0;i
三岁就很萌@D
·
2024-02-08 06:12
设计
leetcode
leetcode
算法
排序算法
Leetcode
303. 区域和检索 - 数组不可变
题目描述给定一个整数数组nums,求出数组从索引i到j(i≤j)范围内元素的总和,包含i、j两点。实现NumArray类:NumArray(int[]nums)使用数组nums初始化对象intsumRange(inti,intj)返回数组nums从索引i到j(i≤j)范围内元素的总和,包含i、j两点(也就是sum(nums[i],nums[i+1],…,nums[j]))来源:力扣(LeetCod
无名小卒一枚
·
2024-02-08 06:41
LeetCode
C++
数组
简单
每日一题
上一页
36
37
38
39
40
41
42
43
下一页
按字母分类:
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
其他