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算法分析
39. 组合总和
题目来源:
leetcode
题目:39.组合总和-力扣(
LeetCode
)解题思路:递归获得组合数,通过全局变量记录已经计算过的从而减少递归次数。注意去重。
十年一觉尘与土
·
2025-05-04 05:43
LeetCode
刷题
LeetCode
关于
leetcode
232.用栈实现队列的算法解析题
题目请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty):实现MyQueue类:voidpush(intx)将元素x推到队列的末尾intpop()从队列的开头移除并返回元素intpeek()返回队列开头的元素booleanempty()如果队列为空,返回true;否则,返回false说明:你只能使用标准的栈操作——也就是只有pushtoto
KAI_KD
·
2025-05-03 21:53
算法
Day4 链表part01
Leetcode
203.移除链表
Leetcode
203.移除链表这题主要设计两种方法:直接使用原来的链表来进行删除操作。其需要分类为:1.删除头节点2.删除中间节点设置一个虚拟头结点在进行删除操作。
pleiades qi
·
2025-05-03 21:19
Leetcode
leetcode
链表
算法
算法day3 链表(
Leetcode
203.移除链表元素,Leercode206.反转链表,
Leetcode
707.设计链表)
Leetcode
203.移除链表元素思路:删除链表的时候要从被删除链表的上一个链表连接到被删除链表的下一个链表,可以定义一个新的指针来代替被删除链表,最后删除节点,清理内存。
6iove.
·
2025-05-03 21:49
算法
链表
数据结构
day5_链表基础知识和
leetcode
203.移除链表元素
day5_链表基础知识0、基础理论来自代码随想录总结①单链表:每个节点包括数据域(data)和指针域(next),最后一个节点指针域指向null,入口节点为链表的头节点(head)向后查询②双链表:两个指针域,一个数据域。prevdatanext。头节点的prev为null,最后一个节点的next为null.向前向后都可以查询③循环链表:链表首尾相连。即把单链表的最后一个节点从指向null改为指向
努力生活的熙攘.
·
2025-05-03 21:18
链表
数据结构
java
leetcode
算法
LeetCode
算法题 (比较含退格的字符串)Day9!!!C/C++
https://
leetcode
.cn/problems/backspace-string-compare/description/一、题目描述给定s和t两个字符串,当它们分别被输入到空白的文本编辑器后
我是一只鱼0223
·
2025-05-03 21:46
leetcode
算法
职场和发展
LeetCode
算法题 (最小栈)Day10!!!C/C++
https://
leetcode
.cn/problems/min-stack/description/一、题目描述设计一个支持push,pop,top操作,并能在常数时间内检索到最小元素的栈。
我是一只鱼0223
·
2025-05-03 21:46
leetcode
算法
职场和发展
LeetCode
算法题 (买卖股票的最佳时机 II)Day6!!!C/C++
https://
leetcode
.cn/problems/best-time-to-buy-and-sell-stock-ii/description/一、题目描述给你一个整数数组prices,其中prices
我是一只鱼0223
·
2025-05-03 21:16
leetcode
算法
职场和发展
LeetCode
Day4 链表: 24. 两两交换链表中的节点、19.删除链表的倒数第N个节点、面试题 02.07. 链表相交、142.环形链表II
解题思路19.删除链表的倒数第N个节点(1)题目描述(2)解题思路面试题02.07.链表相交(1)题目描述(2)解题思路142.环形链表II(1)题目描述(2)解题思路203.移除链表元素(1)题目描述
LeetCode
24
影子修
·
2025-05-03 21:46
leetcode
链表
算法
[
LeetCode
] 树状数组+线段树总结
文章目录写在前面线段树树桩数组相关题写在前面
LeetCode
树状数组+线段树的题比较少,而且这两个知识点在面试时被考察的概率极小,但是如果我们知道这两个知识点,在解题的时候会非常便捷(利用高维度工具打击低维度题目
virgilshi
·
2025-05-03 16:44
树状数组
线段树
LeetCode
3033. 修改矩阵
题目来源:
leetcode
题目:3033.修改矩阵-力扣(
LeetCode
)解题思路:获取每列的最大值后将-1替换即可。
十年一觉尘与土
·
2025-05-03 13:55
LeetCode
刷题
LeetCode
Leetcode
刷题记录28——缺失的第一个正数
题源:https://
leetcode
.cn/problems/first-missing-positive/description/?
张书名
·
2025-05-03 12:20
Leetcode刷题记录
leetcode
算法
职场和发展
LeetCode
路径总和系列问题解析:I、II、III的解决方案与优化
文章目录引言一、路径总和I(
LeetCode
112)问题描述方法思路Java代码实现复杂度分析二、路径总和II(
LeetCode
113)问题描述方法思路Java代码实现复杂度分析三、路径总和III(
LeetCode
437
进击的小白菜
·
2025-05-03 08:22
2025
坚持刷题
leetcode
算法
职场和发展
快慢指针之环形链表
1.题目:142.环形链表II-力扣(
LeetCode
)给定一个链表的头节点head,返回链表开始入环的第一个节点。如果链表无环,则返回null。
听雨·眠
·
2025-05-03 01:04
链表
数据结构
快慢指针
深入理解链表:从基础操作到高频面试题解析
1.2链表核心特性1.3链表与数组对比二、链表类型详解2.1单向链表2.2双向链表2.3循环链表三、链表核心操作实现3.1插入操作3.2删除操作四、链表高频面试题精讲4.1反转链表(
LeetCode
206
谦逊码农的旅程
·
2025-05-02 19:51
数据结构
数据结构
链表
Java
leetcode
hot100 堆
如有缺漏谬误,还请批评指正。1.第k大的元素(1)建堆:从最后一个非叶子结点开始建大根堆,建堆时递归调整。核心操作:如果某个孩子比当前节点大,则交换它们,并递归建堆操作(因为此时被交换的结点可能不满足大根堆的性质)。(2)找第k大的元素:从堆尾元素开始一个个弹出并调整堆,弹出k-1次后,堆顶元素就是第k大的元素。classSolution{public:voidmaxHeapify(vector&
不想起名字a
·
2025-05-02 18:46
算法
leetcode
数据结构
力扣刷题总表
链表翻转链表(倒序输出链表)206.反转链表-力扣(
LeetCode
)LCR024.反转链表-力扣(
LeetCode
)
爱吃涮毛肚的肥肥
·
2025-05-02 17:38
Leetcode
leetcode
算法
职场和发展
c++
力扣
面试
2970. 统计移除递增子数组的数目 I
计算移除递增子数组的数量在本篇博客中,我们将探讨一道
Leetcode
上的题目——"计算移除递增子数组的数量"。我们将逐步分析题目要求、提供解题思路,并通过优化算法来解决问题。
Joyner2018
·
2025-05-02 12:36
python
leetcode
算法
职场和发展
python
开发语言
数据结构
leetcode
76.最小覆盖子串c++超出时间限制
classSolution{public:stringminWindow(strings,stringt){inti=0,j=0;unordered_mapneedMap;intneedCnt=t.size();//needMap代表:需要某个字符(key)若干个(value).needCnt表示当前缺失的字符数量。stringres="";for(autoitem:t){needMap[item
好奇的蛋黄果
·
2025-05-02 08:10
c++
leetcode
算法
leetcode
76. 最小覆盖子串
leetcode
76.最小覆盖子串给你一个字符串s、一个字符串t。返回s中涵盖t所有字符的最小子串。如果s中不存在涵盖t所有字符的子串,则返回空字符串“”。
shendaoyu
·
2025-05-02 08:09
leetcode
leetcode
算法
java
Leetcode
76
题目描述思路分析采用滑动窗口,窗口有左右边界,先通过扩展右边界找出一个包含T中所有字符的子串,然后收缩左边界,直到不能再收缩。记录此时的子串。然后收缩左边界,继续扩展右边界,直到再找到满足要求的子串,和上次的进行比较,保存更小的子串。返回执行,直到右边界到达S串尾,且左边界不能再收缩。代码publicstaticStringminWindow(Strings,Stringt){Mapmap=new
Bennett 黄柏禧
·
2025-05-02 08:37
算法与数据结构
leetcode
LeetCode
刷题 -- 48. 旋转图像
题目算法题解:顺时针旋转矩阵(90度)1.算法描述给定一个n×n的二维矩阵,请将矩阵顺时针旋转90度。例如:输入:[[1,2,3],[4,5,6],[7,8,9]]输出:[[7,4,1],[8,5,2],[9,6,3]]2.思路分析顺时针旋转矩阵90度的操作可以分解为两步:第1步:矩阵转置即以矩阵对角线(从左上到右下)为轴,进行镜像翻转。第2步:每行逆序将每一行从左到右逆序。图示如下:原矩阵:转置
sz66cm
·
2025-05-02 04:13
leetcode
算法
职场和发展
LeetCode
48. 旋转图像(旋转矩阵)三种解法
##48.旋转图像(旋转矩阵)难度:Medium语言:Java题目给定一个n×n的二维矩阵表示一个图像。将图像顺时针旋转90度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例1:给定matrix=[[1,2,3],[4,5,6],[7,8,9]],原地旋转输入矩阵,使其变为:[[7,4,1],[8,5,2],[9,6,3]]示例2:给定mat
FRENKIE_AIGC
·
2025-05-02 04:13
LeetCode
数组
日拱一卒(14)——
leetcode
学习记录:转置矩阵
一、题目给定一个二维数组,求这个数组的转置矩阵二、思路创建一个转置矩阵大小的全零二维数组。遍历原二维数组的各个元素,放置到转置后的位置。难点在于创建新数组。三、题解classSolution:deftranspose(self,matrix:List[List[int]])->List[List[int]]:new=[[0]*len(matrix)for_inrange(len(matrix[0]
特立独行的Q
·
2025-05-02 04:13
leetcode
学习
矩阵
LeetCode
978 最长湍流子数组 题解
这个题的思路非常简单,只是我的代码没有优化,用的时间复杂度是o(n+n),所以其实还好,给大家说说我的思路,对于本题,我们先研究第一种情况,我们可以通过双下标对其进行维护,再更新l和r下标的同时还能找出最长的湍流子数组的长度,然后就是去优化一些存在的问题即可有两种特殊情况也需要我们去考虑一种是数组长度为1,这个比较简单,我们直接判断长度然后返回子数组长度为1即可还有一种是奇下标和偶下标的值想等,即
Demons_kirit
·
2025-05-02 00:14
算法
leetcode
算法
数据结构
leetcode
0235. 二叉搜索树的最近公共祖先-medium
1题目:二叉搜索树的最近公共祖先官方标定难度:中给定一个二叉搜索树,找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树T的两个结点p、q,最近公共祖先表示为一个结点x,满足x是p、q的祖先且x的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉搜索树:root=[6,2,8,0,4,7,9,null,null,3,5]示例1:输入:root=[6,2
智趣代码实验室
·
2025-05-01 17:05
Leetcode
数据结构
算法
leetcode
c++
LeetCode
-75. 颜色分类-Java-medium
题目链接法一(三指针)/***交换数组中两个元素的位置**@paramnums*@parami*@paramj*/privatevoidswap(int[]nums,inti,intj){if(i!=j){//两个相同的数^结果为0,开头加一个判断可以避免这种情况nums[i]^=nums[j];nums[j]^=nums[i];nums[i]^=nums[j];}}/***三指针,借鉴快排思想,
happy life 2022
·
2025-05-01 17:34
#
双指针
java
leetcode
算法
LeetCode
75. 颜色分类(Medium)/ 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面(Easy)/ 大小写字母左右移动 / 元素移动问题!!!
283.移动零(原地移动到数组末尾)(Easy)剑指Offer21.调整数组顺序使奇数位于偶数前面(Easy)【原地】大小写字母左右移动26.【原地】删除排序数组中的重复项(Easy)题目链接题解颜色分类思路代码classSolution:###0123单指针(32ms,14.9MB)defsortColors(self,nums:List[int])->None:"""Donotreturnan
Aiclin
·
2025-05-01 17:03
LeetCode
leetcode
算法
职场和发展
【软件设计师:复习】上午题核心知识点总结(一)
典型问题:合并两个有序链表(
LeetCode
21)。链表反转(迭代/递归实现)。栈与队列栈:LIFO(后进先出),应用场景:函数调用栈、括号匹配。
无心水
·
2025-05-01 17:32
软考
软件设计师
计算机软件水平考试
软件设计师上午题
数据结构与算法
操作系统
数据库设计
数据结构-链表刷题集(长期更新)
文章目录1.
leetcode
2两数之和1.1解法一2.链表反转3.指定区间的链表翻转1.
leetcode
2两数之和1.1解法一题目及其相关实例如下要做这个题,首先我们要学会模拟竖式的加法,我们知道即使是
浅念同学
·
2025-05-01 17:31
数据结构
链表
leetcode
0075. 颜色分类-medium
1题目:官方标定难度:中给定一个包含红色、白色和蓝色、共n个元素的数组nums,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。我们使用整数0、1和2分别表示红色、白色和蓝色。必须在不使用库内置的sort函数的情况下解决这个问题。示例1:输入:nums=[2,0,2,1,1,0]输出:[0,0,1,1,2,2]示例2:输入:nums=[2,0,1]输出:[0,1,2]提
智趣代码实验室
·
2025-05-01 17:01
Leetcode
leetcode
算法
c++
LeetCode
1482.制作m束花所需的最少天数
给你一个整数数组bloomDay,以及两个整数m和k。现需要制作m束花。制作花束时,需要使用花园中相邻的k朵花。花园中有n朵花,第i朵花会在bloomDay[i]时盛开,恰好可以用于一束花中。请你返回从花园中摘m束花需要等待的最少的天数。如果不能摘到m束花则返回-1**二分法对制作天数这个可能区间进行二分构造辅助函数判断当前天数能否制作m束花**classSolution{publicintmin
零一熊
·
2025-05-01 11:53
LeetCode
leetcode
java
【力扣】638. 大礼包
638.大礼包在
LeetCode
商店中,有n件在售的物品。每件物品都有对应的价格。然而,也有一些大礼包,每个大礼包以优惠的价格捆绑销售一组物品。
向上的毛毛
·
2025-05-01 11:52
1024程序员节
LeetCode
每日抑题 1482. 制作 m 束花所需的最少天数
1482.制作m束花所需的最少天数难度:中等语言:java题目内容给你一个整数数组bloomDay,以及两个整数m和k。现需要制作m束花。制作花束时,需要使用花园中相邻的k朵花。花园中有n朵花,第i朵花会在bloomDay[i]时盛开,恰好可以用于一束花中。请你返回从花园中摘m束花需要等待的最少的天数。如果不能摘到m束花则返回-1。解题思路看了一圈,要求太多了,又要相连的花,还有成束,又要最短时间
ChasingSunny
·
2025-05-01 11:18
每日一题
leetcode
二分法
【
LeetCode
】组合总和II
链接:https://
leetcode
.c
avocado_green
·
2025-05-01 09:36
leetcode
算法
【
LeetCode
】最长公共前缀
题目描述编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。题目链接我的最初解答版本思路是以第一个字符串为比较对象,从1个字符开始逐个累加字符、构成试探前缀(tryPrefix),然后判断其余待比较的字符串是否以tryPrefix为前缀,一轮比较下来如果都是的话则将此试探前缀视为已经确定的安全前缀(prefix),一旦过程中出现否定的结果则比较结束,返回当前最新的安
avocado_green
·
2025-05-01 09:06
LeetCode
leetcode
typescript
LeetCode
第181题_超过经理收入的员工
LeetCode
第181题:超过经理收入的员工题目描述表:Employee+-------------+---------+|ColumnName|Type|+-------------+-------
@蓝莓果粒茶
·
2025-05-01 07:57
算法
leetcode
算法
职场和发展
excel
笔记
python
c++
LeetCode
第179题_最大数
LeetCode
第179题:最大数题目描述给定一组非负整数nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。
@蓝莓果粒茶
·
2025-05-01 07:27
算法
leetcode
算法
职场和发展
笔记
python
excel
c#
LeetCode
:55.跳跃游戏——局部最优并非全局最优!
前言:今天刷到一道题,终于理解了所谓的贪心算法中的“局部最优解并非是全局最优解”。最近一段时间很是焦虑,原因是自己总想着要最好,要找实习,进大厂,要发论文发最好的。于是就逼着自己把生活中遇到的每一件事都要求做到完美,做到最好。学一个知识点时,沿着深度去学习定义、理论、原理、应用等等。导致学习的速度很慢、广度很小。总是想着把眼前的遇到的问题,做到最优,那么是不是最终的目的也就是最优了呢?答案显然是:
ricky_fan
·
2025-05-01 05:11
算法题Hot-100:
leetcode
游戏
算法
Leetcode
刷题报告1——哈希表
文章目录说明[1.两数之和](https://
leetcode
.cn/problems/two-sum/)题干题解[49.字母异位词分组](https://
leetcode
.cn/problems/group-anagrams
红白小蛋糕
·
2025-04-30 22:27
LeetCode刷题
leetcode
散列表
哈希算法
leetcode
373.寻找和最小的k对数字
这题优先想到小根堆,利用小根堆,存储一个三元组,三元组第一个数字表示选取两个数组的值的总和,用于小根堆排序,第二个数是数组1的下标,第三个数是数组2的下标两个数组nums1和nums2都是非递减排序的,因此:最小的和一定是nums1[0]+nums2[0](两个数组的第一个元素)。次小的和可能是nums1[0]+nums2[1]或nums1[1]+nums2[0](在第一个元素的右侧或下一个元素中
ゞ 正在缓冲99%…
·
2025-04-30 21:26
算法
java
堆
leetcode
189. 轮转数组
原理与步骤问题分析将数组元素向右轮转k个位置。例如,[1,2,3,4,5]轮转k=2后变为[4,5,1,2,3]。要求原地操作且时间复杂度为O(n)。解决思路采用三次反转法:反转后k个元素:将后k个元素的顺序颠倒。反转前n-k个元素:将前n-k个元素的顺序颠倒。整体反转数组:交换前n-k和后k两部分的位置,并恢复各自顺序。图示法步骤(以输入nums=[1,2,3,4,5],k=2为例)步骤操作说明
小王Jacky
·
2025-04-30 21:25
编程算法提高(c++)
算法
数据结构
c++
反转数组
Leetcode
189. 轮转数组
问题描述:给定一个整数数组nums,将数组中的元素向右轮转k个位置,其中k是非负数。示例1:输入:nums=[1,2,3,4,5,6,7],k=3输出:[5,6,7,1,2,3,4]解释:向右轮转1步:[7,1,2,3,4,5,6]向右轮转2步:[6,7,1,2,3,4,5]向右轮转3步:[5,6,7,1,2,3,4]示例2:输入:nums=[-1,-100,3,99],k=2输出:[3,99,-
only-qi
·
2025-04-30 21:55
算法
数据结构
leetcode
leetcode
189.轮转数组
示例1:输入:nums=[1,2,3,4,5,6,7],k=3输出:[5,6,7,1,2,3,4]解释:向右轮转1步:[7,1,2,3,4,5,6]向右轮转2步:[6,7,1,2,3,4,5]向右轮转3步:[5,6,7,1,2,3,4]示例2:输入:nums=[-1,-100,3,99],k=2输出:[3,99,-1,-100]解释:向右轮转1步:[99,-1,-100,3]向右轮转2步:[3,9
Coder Leo
·
2025-04-30 21:54
leetcode
算法
LeetCode
189.轮转数组
189.轮转数组给定一个整数数组nums,将数组中的元素向右轮转k个位置,其中k是非负数。示例1:输入:nums=[1,2,3,4,5,6,7],k=3输出:[5,6,7,1,2,3,4]解释:向右轮转1步:[7,1,2,3,4,5,6]向右轮转2步:[6,7,1,2,3,4,5]向右轮转3步:[5,6,7,1,2,3,4]示例2:输入:nums=[-1,-100,3,99],k=2输出:[3,9
Tanecious.
·
2025-04-30 21:53
刷题笔记
leetcode
算法
java
一文搞定搜索
搜索算法入门二分查找左闭右开区间二分查找插入点无重复元素存在重复元素二分查找边界查找左边界查找右边界哈希优化策略线性查找哈希查找相关例题
leetcode
704.二分查找法一:二分查找
leetcode
278
TenPeaches
·
2025-04-30 18:30
数据结构与算法
算法
java
数据结构
LeetCode
100题
LeetCode
100两数之和遍历数组,以哈希表存数与下标,边存边查,速找和为目标值的两数下标classSolution{publicint[]twoSum(int[]nums,inttarget){int
雪落山庄
·
2025-04-30 16:51
leetcode
java
数据结构
开发语言
Leetcode
3533. Concatenated Divisibility
Leetcode
3533.ConcatenatedDivisibility1.解题思路2.代码实现题目链接:3533.ConcatenatedDivisibility1.解题思路这一题的话事实上如果我们原始的数组有序排列一下
Espresso Macchiato
·
2025-04-30 16:20
leetcode笔记
leetcode
hard
leetcode
3533
leetcode周赛447
动态规划
贪婪算法
4.5蓝桥杯|高塔登顶方案(5025)
2、只有我受煎熬吗,偶买噶,,,目录研究步骤:第一步:去做70.爬楼梯-力扣(
LeetCode
)第二步:使用斐波那契数列的思路暴力高塔登顶方案第三步:使用前缀和优化研究高塔登顶方案,如果没有思路:研究步骤
幼稚鬼?
·
2025-04-30 16:50
蓝桥杯
职场和发展
Day105 | 灵神 | 二叉树 出现次数最多的子树元素和
Day105|灵神|二叉树出现次数最多的子树元素和1026.节点与其祖先之间的最大差值1026.节点与其祖先之间的最大差值-力扣(
LeetCode
)思路:核心其实就是要维护遍历过程中的最大值和最小值,然后和本层的结点做减法找到最大值即可
为了前进而后退,为了走直路而走弯路
·
2025-04-30 14:04
刷题记录
深度优先
算法
上一页
21
22
23
24
25
26
27
28
下一页
按字母分类:
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
其他