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链表回文
二叉树展开为
链表
题目:给你二叉树的根结点root,请你将它展开为一个单
链表
:展开后的单
链表
应该同样使用TreeNode,其中right子指针指向
链表
中下一个结点,而左子指针始终为null。
zmuy
·
2025-06-23 02:39
LeetCode
hot100
链表
数据结构
【
LeetCode
#第228题】汇总区间(简单题)
228.汇总区间-力扣(
LeetCode
)给定一个无重复元素的有序整数数组nums。区间[a,b]是从a到b(包含)的所有整数的集合。返回恰好覆盖数组中所有数字的最小有序区间范围列表。
玉~你还好吗
·
2025-06-23 02:09
leetcode
算法
【LC#392&&70】判断子序列&&爬楼梯(dp算法 第一期)
392.判断子序列-力扣(
LeetCode
)给定字符串s和t,判断s是否为t的子序列。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。
·
2025-06-23 02:09
【动态规划】
LeetCode
#213 打家劫舍 II(空间复杂度 O(1))
题目链接:
LeetCode
#213打家劫舍II题目描述:#213.打家劫舍II你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。
Code_Yilia
·
2025-06-23 02:39
动态规划
LeetCode
java
动态规划
leetcode
算法
跟着Carl学算法--
链表
移除
链表
元素力扣链接:题目链接题目:给你一个
链表
和一个val,删除所有节点值等于val的节点,返回
链表
思路:很简单很基础的
链表
题,但还是踩了不少坑,记录一下每次判断的都是当前节点的下一个是否符合要求,而不是当前节点
怀揣小梦想
·
2025-06-22 22:41
算法
链表
数据结构
c++
leetcode
【
LeetCode
】1247. 交换字符使得字符串相同
1247.交换字符使得字符串相同题目描述有两个长度相同的字符串s1和s2,且它们其中只含有字符“x”和“y”,你需要通过「交换字符」的方式使这两个字符串相同。每次「交换字符」的时候,你都可以在两个字符串中各选一个字符进行交换。交换只能发生在两个不同的字符串之间,绝对不能发生在同一个字符串内部。也就是说,我们可以交换s1[i]和s2[j],但不能交换s1[i]和s1[j]。最后,请你返回使s1和s2
Schanappi
·
2025-06-22 17:11
LeetCode刷题
leetcode
算法
数据结构
0编辑距离中等
LeetCode
583. 两个字符串的删除操作
583.两个字符串的删除操作描述给定两个单词word1和word2,找到使得word1和word2相同所需的最小步数,每步可以删除任意一个字符串中的一个字符。分析dp[i][j]dp[i][j]表示以i-1为结尾的字符串word1,和以j-1为结尾的字符串word2,想要达到相等,所需要删除元素的最少次数。动态转移方程word1.charAt(i-1)等于word2.charAt(j-1):dp[
18阿鲁
·
2025-06-22 17:41
动态规划
每日
leetcode
704.二分查找-力扣(
LeetCode
)题目给定一个n个元素有序的(升序)整型数组nums和一个目标值target,写一个函数搜索nums中的target,如果target存在返回下标,否则返回-1。
XiaoyaoCarter
·
2025-06-22 17:08
leetcode训练
leetcode
算法
职场和发展
c++
二分查找
leetcode
332.重新安排行程:优先队列与DFS实现欧拉路径的行程规划
一、题目深度解析与行程规划本质题目描述给定一个机票的字符串二维数组tickets,每个元素是[from,to]的形式,表示从from到to的机票。要求找出从JFK出发的行程,且必须使用所有机票,若存在多种可能的行程,返回字典序最小的那个。核心特性分析图论模型:每个机场是图的节点,机票是图的边,问题转化为在图中寻找一条经过所有边的路径欧拉路径:题目本质是寻找图中的欧拉路径(经过每条边恰好一次的路径)
Musennn
·
2025-06-22 17:08
leetcode刷题详解
深度优先
算法
leetcode
java
每日
leetcode
153.寻找旋转排序数组中的最小值-力扣(
LeetCode
)题目已知一个长度为n的数组,预先按照升序排列,经由1到n次旋转后,得到输入数组。
·
2025-06-22 14:17
(
LeetCode
) 169. 多数元素(哈希表 || 二分查找)
题目:169.多数元素方法一:二分法,最坏的时间复杂度0(nlogn),但平均0(n)即可。空间复杂度为0(1)。C++版本:intn=nums.size();intl=0,r=n-1;while(ln/2)break;elsel=mid+1;}returnnums[(l+r)/2];JAVA版本:classSolution{publicintmajorityElement(int[]nums){
岁忧
·
2025-06-22 08:44
LeetCode
LeetCode
面试经典
150
题
C++
JAVA
Go版本
leetcode
散列表
算法
java
c++
go
【JAVA】集合
Set接口的实现类有HashSet(常用,底层结构是HashMap,存key不存value)TreeSet(不常用)Map接口最长的见的实现类是HashMap,底层是数组+
链表
或红黑树不常见的实现类有HashTable
superkcl2022
·
2025-06-22 00:51
#
java
java
开发语言
从“信息茧房”到“内容生态”:一个算法解救了我的推荐系统(3085. 成为 K 特殊字符串需要删除的最少字符数)
今天想和大家聊聊一个我最近在项目中遇到的“甜蜜的烦恼”,以及我是如何从一个看似不相关的
LeetCode
算法题中找到灵感,并最终完美解决问题的。我遇到了什么问题?
满分观察网友z
·
2025-06-22 00:20
算法解构与应用
算法
数据库
20. 线性表的比较
本节主要介绍单
链表
、循环
链表
和双向
链表
的比较及顺序表和
链表
的比较。
·
2025-06-21 23:43
【递归、搜索与回溯算法】递归
递归递归汉诺塔(easy)合并两个有序
链表
(easy)反转
链表
(easy)两两交换
链表
中的节点(medium)Pow(x,n)-快速幂(medium)递归在解决⼀个规模为n的问题时,如果满⾜以下条件,我们可以使
T哇
·
2025-06-21 19:47
递归
搜索与回溯算法
算法
回溯----7.分割
回文
串
题目链接/**将字符串分割为若干
回文
子串;
回文
子串:单个字符、正序倒序一样。
码破苍穹ovo
·
2025-06-21 18:12
算法日记-Hot100
算法
day 48 第十章 单调栈part01 739. 每日温度 49503.下一个更大元素II 6.下一个更大元素 I
任务日期:7.23题目一链接:739.每日温度-力扣(
LeetCode
)思路:通常是一维数组,要寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置,此时我们就要想到可以用单调栈了。
ZKang_不会过人
·
2025-06-21 14:43
算法
代码随想录算法训练营第38天 | 322. 零钱兑换 279.完全平方数 139.单词拆分 背包问题总结
|
LeetCode
:322.零钱兑换_哔哩哔哩_bilibili代码随想录classSolution{publicintcoinChange(int[]
ohnoooo9
·
2025-06-21 13:10
代码随想录算法训练营打卡
算法
代码随想录算法训练营第三十八天 | 322.零钱兑换 279.完全平方数 139.单词拆分
322.零钱兑换题目链接:322.零钱兑换-力扣(
LeetCode
)文章讲解:代码随想录视频讲解:动态规划之完全背包,装满背包最少的物品件数是多少?
m0_50413530
·
2025-06-21 13:09
算法
代码随想录算法训练营第38天| 322. 零钱兑换、279.完全平方数、139.单词拆分
模板:今日学习的文章链接和视频链接自己看到题目的第一想法看完代码随想录之后的想法自己实现过程中遇到哪些困难今日收获,记录一下自己的学习时长322.零钱兑换题目链接:322.零钱兑换-力扣(
LeetCode
扛过今天777
·
2025-06-21 13:06
算法
代码随想录算法训练营第38天 | 322. 零钱兑换、279.完全平方数、139.单词拆分
-力扣(
LeetCode
)funccoinChange(coins[]int,amountint)int{ifamount==0{return0}dp:=make([]int,amount+1)forj
百卷-星河
·
2025-06-21 13:06
算法
使用过C++单向
链表
吗?一起来围观下,C++标准库std::forward_list单向
链表
的使用
01std::forward_list介绍std::forward_list是C++标准库中的一个单向
链表
容器。它与list双向
链表
不同,它只支持从头部到尾部的顺序遍历。
·
2025-06-21 12:03
「C/C++」C/C++STL篇 之 forward_list单向
链表
容器
✨博客主页何曾参静谧的博客(✅关注、点赞、⭐收藏、转发)全部专栏(专栏会有变化,以最新发布为准)「Win」Windows程序设计「IDE」集成开发环境「定制」定制开发集合「C/C++」C/C++程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「UG/NX」BlockUI集合「Py」Python程序设计「Math」探秘数学世界「PK」Paras
何曾参静谧
·
2025-06-21 12:32
c语言
c++
list
C++容器之 forward_list (单向
链表
)使用说明
目录1.语法格式2.说明3.用法示例1.语法格式描述控制可变长度元素序列的对象。该序列存储为单向(前向)链接的节点列表,每个节点包含一个Type类型的成员。template>classforward_list;Type:要存储在forward_list中的元素数据类型。Allocator:存储的分配器对象,封装了有关forward_list内存分配和释放的详细信息。此参数为可选参数。默认值为all
ComputerInBook
·
2025-06-21 11:59
c++
VC++
编程思想
算法
c++
单向链表
C语言专题:7.Queue(队列)与 Linked List(
链表
)
在数据结构中,队列(Queue)和
链表
(LinkedList)是两个常见的线性结构,具有不同的访问和操作特性。掌握它们的实现方式和使用场景,是深入理解C语言和算法设计的重要基础。
代码与烙铁
·
2025-06-21 10:20
C语言基础
c语言
单片机
c++26新功能—hive容器
STL中的容器,也是先从常见的向量、
链表
以及映射等等开始应用,
fpcc
·
2025-06-21 08:13
C++11
C++
c++
hive
redis常用数据结构及命令
结构类型结构存储的值结构的读写能力String字符串、整数或者浮点数对整个字符串或者字符串的一部分执行操作;对整数和浮点数执行自增或者自减操作List一个
链表
,
链表
上的每个节点都包含一个字符串从
链表
的两端
just-julie
·
2025-06-21 07:34
redis
数据结构
数据库
leetcode
--接雨水(双指针法,动态规划,单调栈)
目录方法一:双指针法方法二:动态规划方法三:单调栈42.接雨水-力扣(
LeetCode
)黑色的是柱子,蓝色的是雨水,我们先来观察一下雨水的分布情况:雨水落在凹槽之间,在一个凹槽的左右都会有两个柱子,两个柱子高度可能相同也可能不同
みずいろ
·
2025-06-21 06:51
算法
leetcode
算法
数据结构
c++
c语言
Day05_数据结构大项目作业20250620
项目:基于
链表
的通信录管理意义:对于一个通信录来说,要管理联系人的信息,包括编号,姓名,性别,电话。
liujing10232929
·
2025-06-21 04:10
数据结构
数据结构
mysql源码-innodb mvcc原理与源码解析
原理图解说1在innodb中,保存了一个全局事务
链表
,记录了活跃事务,即还未完成的事务2t2时刻活跃的事务id为104~111,其中107已经完成3在t2时刻,读事务A查询数据,在查询范围内的事务id为
qhgxinxing
·
2025-06-20 23:44
mysql源码分析
mysql
数据库
mvcc原理
mvcc源码解析
删除
链表
的倒数第 N 个结点
目录题目解法一:计算
链表
长度解法二:双指针题目解法一:计算
链表
长度structListNode*delete(structListNode*head,intn){structListNode*virHead
黑听人
·
2025-06-20 19:40
力扣
C
c语言
leetcode
数据结构
算法
开发语言
链表
的中间结点
目录题目解法一:计算
链表
长度解法二:快慢指针题目解法一:计算
链表
长度structListNode*find(structListNode*head){intlen=0;structListNode*curNode
黑听人
·
2025-06-20 19:10
力扣
C
c语言
leetcode
数据结构
算法
开发语言
Java求职者面试题详解:计算机网络、操作系统、设计模式与数据结构
4.请解释数据结构中的
链表
和数组的区别。5.什么是死锁?如何避免死锁?解析1.TCP和UDP的区别TCP(传输控制协议)是一种面向连接的协议,确保数据的可靠传输。它通过三次握手建立连接
迢迢星万里灬
·
2025-06-20 13:00
Java面试宝典
Java
面试题
计算机网络
操作系统
设计模式
数据结构
c++数据结构 有效的数独、矩阵置零
36.有效的数独-力扣(
LeetCode
)(
leetcode
-cn.com)classSolution{public:boolisValidSudoku(vector>&board){introw[9]
艾艾的博客
·
2025-06-20 12:54
c++
数据结构
矩阵
HOT 100 | 189.轮转数组、238. 除自身以外数组的乘积、41. 缺失的第一个正数
一、189.轮转数组189.轮转数组-力扣(
LeetCode
)1.解题思路1.由于k可能很大,为了防止多次重复挪动,所以只需要对其取余,就是最终挪动的位置。
Accept17
·
2025-06-20 12:22
python
算法
leetcode
LeetCode
-73. 矩阵置零-C++
给定一个mxn的矩阵,如果一个元素为0,则将其所在行和列的所有元素都设为0。请使用原地算法。示例1:输入:matrix=[[1,1,1],[1,0,1],[1,1,1]]输出:[[1,0,1],[0,0,0],[1,0,1]]示例2:输入:matrix=[[0,1,2,0],[3,4,5,2],[1,3,1,5]]输出:[[0,0,0,0],[0,4,5,0],[0,3,1,0]]代码实现,带详细
工程欣欣
·
2025-06-20 12:20
LeetCode每日一题
leetcode
矩阵
c++
搜索二维矩阵 II、160.相交
链表
、206.反转
链表
一、240.搜索二维矩阵II1.解题思路本题采用二分查找的方法。(1)对矩阵的每一行进行二分查找,首先定义出左边界和右边界的变量,然后计算出中间元素的下标索引,将中间元素与target元素值进行比对。(2)如果中间元素比target大,那么需要在中间元素的左边区间进行二次二分查找,也就是将右边界的下标更改为mid-1;如果中间元素比target小,那么需要在中间元素的右边区间进行二次二分查找,也就
Accept17
·
2025-06-20 12:50
矩阵
算法
数据结构
数组中等
LeetCode
6091. 划分数组使最大差为 K
6091.划分数组使最大差为K描述给你一个整数数组nums和一个整数k。你可以将nums划分成一个或多个子序列,使nums中的每个元素都恰好出现在一个子序列中。在满足每个子序列中最大值和最小值之间的差值最多为k的前提下,返回需要划分的最少子序列数目。子序列本质是一个序列,可以通过删除另一个序列中的某些元素(或者不删除)但不改变剩下元素的顺序得到。classSolution{publicintpar
18阿鲁
·
2025-06-20 11:49
leetcode
排序算法
算法
LeetCode
2875.无线数组的最短子数组
给你一个下标从0开始的数组nums和一个整数target。下标从0开始的数组infinite_nums是通过无限地将nums的元素追加到自己之后生成的。请你从infinite_nums中找出满足元素和等于target的最短子数组,并返回该子数组的长度。如果不存在满足条件的子数组,返回-1。示例1:输入:nums=[1,2,3],target=5输出:2解释:在这个例子中infinite_nums=
吃着火锅x唱着歌
·
2025-06-20 11:18
LeetCode
leetcode
算法
数据结构
【经典算法】
LeetCode
215. 数组中的第K个最大元素(Java/C/Python3实现含注释说明,Medium)
个人主页:进朱者赤阿里非典型程序员一枚,记录平平无奇程序员在大厂的打怪升级之路。一起学习Java、大数据、数据结构算法(公众号同名)目录题目描述思路及实现方式一:快速选择排序思路代码实现Java版本C语言版本Python3版本复杂度分析方式二:最小堆(最小优先队列)思路代码实现Java版本C语言版本Python3版本复杂度分析总结相似题目标签(题目类型):数组题目描述给定整数数组nums和整数k,
进朱者赤
·
2025-06-20 11:17
#
面试
#
经典算法
算法
leetcode
数组中的第K个最大元素
数组查找
【
LeetCode
】912. 排序数组(中等)
912.排序数组给你一个整数数组nums,请你将该数组升序排列。示例1:输入:nums=[5,2,3,1]输出:[1,2,3,5]示例2:输入:nums=[5,1,1,2,0,0]输出:[0,0,1,1,2,5]提示:1arr[j+1]){swap(arr,j,j+1);}}}}//i和j是一个位置的话,会出错publicvoidswap(int[]arr,inti,intj){arr[i]=ar
晴雪月乔
·
2025-06-20 11:47
#
LeetCode
数组
leetcode
排序算法
【贪心算法】
Leetcode
763. 划分字母区间【中等】
划分字母区间给你一个字符串s。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是s。返回一个表示每个字符串片段的长度的列表。示例1:输入:s=“ababcbacadefegdehijhklij”输出:[9,7,8]解释:划分结果为“ababcbaca”、“defegde”、“hijhklij”。每个字母最多出现
FLGB
·
2025-06-20 11:15
算法
贪心算法
leetcode
算法
leetcode
3443. K 次修改后的最大曼哈顿距离 中等
给你一个由字符'N'、'S'、'E'和'W'组成的字符串s,其中s[i]表示在无限网格中的移动操作:'N':向北移动1个单位。'S':向南移动1个单位。'E':向东移动1个单位。'W':向西移动1个单位。初始时,你位于原点(0,0)。你最多可以修改k个字符为任意四个方向之一。请找出在按顺序执行所有移动操作过程中的任意时刻,所能达到的离原点的最大曼哈顿距离。曼哈顿距离定义为两个坐标点(xi,yi)和
圣保罗的大教堂
·
2025-06-20 11:15
模拟
leetcode
leetcode
leetcode
2294. 划分数组使最大差为 K 中等
给你一个整数数组nums和一个整数k。你可以将nums划分成一个或多个子序列,使nums中的每个元素都恰好出现在一个子序列中。在满足每个子序列中最大值和最小值之间的差值最多为k的前提下,返回需要划分的最少子序列数目。子序列本质是一个序列,可以通过删除另一个序列中的某些元素(或者不删除)但不改变剩下元素的顺序得到。示例1:输入:nums=[3,6,1,2,5],k=2输出:2解释:可以将nums划分
·
2025-06-20 11:44
单项循环
链表
及带头指针的
链表
单项循环
链表
及其带头指针的
链表
对于
链表
我们要仔细深入的学习它,为何呢,因为他是我们在后面学习非线性数据结构的基础,像后面的树,图等结构都是由
链表
演变出来的,所以我们这篇博客继续探究
链表
带头指针的
链表
我们上篇博客讲述了带头节点的
链表
如图然后演示出了一系列公式化的打法像什么插入删除
V我五十买鸡腿
·
2025-06-20 10:07
数据结构
笔记
链表
数据结构
二叉树:定义、性质、存储与遍历全解析
今天,我将带大家深入学习二叉树的定义、性质、存储结构以及遍历方法,并重点掌握二叉
链表
存储结构,同时探讨如何根据遍历方法重建二叉树。
秋山落叶万岭花开ღ
·
2025-06-20 09:32
数据结构
算法
python
C++二分查找
2.二分查找2.1704.二分查找-力扣(
LeetCode
)给定一个n个元素有序的(升序)整型数组nums和一个目标值t
乾坤未定的黑马
·
2025-06-20 04:24
C++
c++
开发语言
算法
二分查找
【
Leetcode
面试经典150题】88. 合并两个有序数组-Java
一、题目给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m+n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。nums2的长度为n。二、第一
GDJUpUp
·
2025-06-20 03:18
leetcode
算法
java
leetcode
_198_打家劫舍
思路:首先定义一个数组对于dp[i]读作1->i能获取的最大利益,第i个房屋只有"偷"和不"偷"两种情况,分别进行讨论"偷":既然"偷"了i那就肯定不能偷i-1了,但是为了使"偷"的尽可能多除了必须不能"偷"的全要"偷",所以得到第一个部分dp[i]=nums[i]+dp[i-2];不"偷":这就很明显了不"偷"那就是前[i-1]个的情况嘛dp[i]=dp[i-1];综上实现公式应为dp[i]=m
c_ceiling
·
2025-06-20 02:47
leetcode
算法
c++
LeetCode
面试经典150题 88.合并两个有序数组
题目:给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m+n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。nums2的长度为n。思路:从右
爱笑的coder
·
2025-06-20 02:16
算法刷题-数组
leetcode
面试
算法
上一页
11
12
13
14
15
16
17
18
下一页
按字母分类:
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
其他