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
-构造元素不等于两相邻元素平均值的数组
给你一个下标从0开始的数组nums,数组由若干互不相同的整数组成。你打算重新排列数组中的元素以满足:重排后,数组中的每个元素都不等于其两侧相邻元素的平均值。更公式化的说法是,重新排列的数组应当满足这一属性:对于范围1res[length-2]){res[length-1]=nums[length-1];}else{res[length-1]=res[length-2];res[length-2]=
程序员小2
·
2024-01-24 08:05
第三十二天 Remove Duplicates from Sorted Array
已经坚持了一个月了,但总结的太少,感觉提高还是不够,今天开始总结先开个新题:https://
leetcode
-cn.com/problems/remove-duplicates-from-sorted-array
业余马拉松选手
·
2024-01-24 07:13
LeetCode
541. 反转字符串 II
541.反转字符串II给定一个字符串s和一个整数k,从字符串开头算起,每计数至2k个字符,就反转这2k字符中的前k个字符。如果剩余字符少于k个,则将剩余字符全部反转。如果剩余字符小于2k但大于或等于k个,则反转前k个字符,其余字符保持原样。示例1:输入:s=“abcdefg”,k=2输出:“bacdfeg”示例2:输入:s=“abcd”,k=2输出:“bacd”提示:1<=s.length<=10
潇与上海
·
2024-01-24 05:52
字符串
LeetCode刷题
算法
leetcode
LeetCode
142. 环形链表 II
142.环形链表II给定一个链表的头节点head,返回链表开始入环的第一个节点。如果链表无环,则返回null。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。如果pos是-1,则在该链表中没有环。注意:pos不作为参数进行传递,仅仅是为了标识链表的实际情况。不允许修改链表。
潇与上海
·
2024-01-24 05:51
双指针
LeetCode刷题
链表
链表
数据结构
leetcode
LeetCode
151. 反转字符串中的单词
151.反转字符串中的单词给你一个字符串s,请你反转字符串中单词的顺序。单词是由非空格字符组成的字符串。s中使用至少一个空格将字符串中的单词分隔开。返回单词顺序颠倒且单词之间用单个空格连接的结果字符串。注意:输入字符串s中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果字符串中,单词间应当仅用单个空格分隔,且不包含任何额外的空格。示例1:输入:s=“theskyisblue”输出:“b
潇与上海
·
2024-01-24 05:51
字符串
LeetCode刷题
双指针
算法
leetcode
LeetCode
59 螺旋矩阵 II
螺旋矩阵II循环不变量的应用给你一个正整数n,生成一个包含1到n2所有元素,且元素按顺时针顺序螺旋排列的nxn正方形矩阵matrix。示例1:输入:n=3输出:[[1,2,3],[8,9,4],[7,6,5]]示例2:输入:n=1输出:[[1]]提示:1>generateMatrix(intn){vector>matrix(n,vector(n,0));//要求返回vector>intstartx
潇与上海
·
2024-01-24 05:51
LeetCode刷题
算法
leetcode
蓝桥杯
最长回文子串(
Leetcode
5)
例题:分析:先给出以下字符串,找出最长的回文子串由题可知,最长的回文子串为bcbabcb,长度为7。我们可以利用中心开发思想寻找最长回文子串,简单说就是以一个字符为中心点,由中心点向两边扩散,如果两边的字符相等,则继续扩散,直至两端的字符不相等,此时就找到了最长回文子串的左右边界(left,right)。根据数组的遍历顺序,一开始以字符b为中心点,并记录此时回文子串的长度,如果后续找到了更长的回文
丶lemon7
·
2024-01-24 05:20
java
开发语言
算法
LeetCode
-题目整理【8】:罗马数字转整数、整数转罗马数字
罗马数字转整数罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符数值I1V5X10L50C100D500M1000例如,罗马数字2写做II,即为两个并列的1。12写做XII,即为X+II。27写做XXVII,即为XX+V+II。通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如4不写做IIII,而是IV。数字1在数字5的左边,所表示的数等于大数5减小数1得到的数值4。同样地
菜鸟要加油!
·
2024-01-24 05:37
leetcode
算法
LeetCode
-题目整理【4】:跳跃游戏
使用贪心算法跳跃游戏给你一个非负整数数组nums,你最初位于数组的第一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回true;否则,返回false。示例1:输入:nums=[2,3,1,1,4]输出:true解释:可以先跳1步,从下标0到达下标1,然后再从下标1跳3步到达最后一个下标。示例2:输入:nums=[3,2,1,0,4]输出:fa
菜鸟要加油!
·
2024-01-24 05:36
leetcode
算法
踩坑记录[4]——
LeetCode
21题:合并两个有序链表
踩坑记录[4]——
LeetCode
21题:合并两个有序链表题目描述题目链接将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
shenfenxihuan
·
2024-01-24 04:23
leetcode
链表
算法
c++
踩坑记录[3]——
LeetCode
83题:删除排序链表中的重复元素
踩坑记录[3]——
LeetCode
83题:删除排序链表中的重复元素题目描述题目链接给定一个已排序的链表的头head,删除所有重复的元素,使每个元素只出现一次。返回已排序的链表。
shenfenxihuan
·
2024-01-24 04:53
leetcode
链表
算法
c++
踩坑记录[2]——
LeetCode
5题:最长回文子串
踩坑记录[2]——
LeetCode
5题:最长回文子串题目描述题目链接给你一个字符串s,找到s中最长的回文子串。如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。
shenfenxihuan
·
2024-01-24 04:23
leetcode
算法
c++
踩坑记录 [1]:在排序数组中查找元素的第一个和最后一个位置
踩坑记录[1]——
LeetCode
34题:在排序数组中查找元素的第一个和最后一个位置题目描述题目链接给你一个按照非递减顺序排列的整数数组nums,和一个目标值target。
shenfenxihuan
·
2024-01-24 04:23
leetcode
算法
c++
C++ 之
LeetCode
刷题记录(十六)
开始cpp刷题之旅。依旧是追求耗时0s的一天。100.相同的树给你两棵二叉树的根节点p和q,编写一个函数来检验这两棵树是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例1:输入:p=[1,2,3],q=[1,2,3]输出:true示例2:输入:p=[1,2],q=[1,null,2]输出:false示例3:输入:p=[1,2,1],q=[1,1,2]输出:false思
icecream_cheese
·
2024-01-24 03:51
c++
数据结构
c++
leetcode
开发语言
代码随想录算法训练营day27 || 39. 组合总和,40.组合总和II,131.分割回文串
视频讲解:带你学透回溯算法-组合总和(对应「
leetcode
」力扣题目:39.组合总和)|回溯法精讲!_哔哩哔哩_bilibili回溯算法中的去重,树层去重树枝去重,你弄清楚了没?
weixin_44316285
·
2024-01-24 03:47
算法
代码随想录算法训练营day28 || 93.复原IP地址,78.子集,90.子集II
|
LeetCode
:93.复原IP地址_哔哩哔哩_bilibili回溯算法解决子集问题,树上节点都是目标集和!|
LeetCode
:78.子集_哔哩哔哩_bilibili回溯算法解决子集问题,如何去重?
weixin_44316285
·
2024-01-24 03:14
算法
算法训练营第五十六天|583. 两个字符串的删除操作 72. 编辑距离
目录
Leetcode
583.两个字符串的删除操作
Leetcode
72.编辑距离
Leetcode
583.两个字符串的删除操作文章链接:代码随想录题目链接:583.两个字符串的删除操作思路:直接记录需要改(
啊就赵得柱
·
2024-01-24 03:10
算法
算法训练营第五十五天|392.判断子序列 115.不同的子序列
目录
Leetcode
392.判断子序列
Leetcode
115.不同的子序列
Leetcode
392.判断子序列文章链接:代码随想录题目链接:392.判断子序列思路:正常动规记录,重点在于后面采用判断classSolution
啊就赵得柱
·
2024-01-24 03:37
算法
leetcode
刷题:消失的数字
数组nums包含从0到n的所有整数,但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间内完成吗?注意:本题相对书上原题稍作改动示例1:输入:[3,0,1]输出:2示例2:输入:[9,6,4,2,3,5,7,0,1]输出:8针对于这道题,我们提供了三种解法:一、排序法遍历法首先使用快排对数组进行排序,使其变成有序数组,由题意得知,在0~n的所有整数连续存放那的数组中前一个数字加一就
accompany_zhao
·
2024-01-24 03:00
leetcode刷题
leetcode
算法
职场和发展
c语言
c++
数据结构
开发语言
leetcode
571给定数字的频率查询中位数
Question:numbers表中保存着数字的值和频率:image.png在此表中数字为:0、0、0、0、0、0、0、1、2、2、2、3,所以中位数是(0+0)/2=0编写一个查询来查找所有数字的中位数并将结果命名为median.image.png思路:1、计算数据的总个数sum(frequency)num;2、利用总个数来判断中位数所应处于的位置:如果num为偶,则中位数位于num/2num/
酸甜柠檬26
·
2024-01-24 03:17
LeetCode
0410.分割数组的最大值:二分
【LetMeFly】410.分割数组的最大值:二分力扣题目链接:https://
leetcode
.cn/problems/split-array-largest-sum/给定一个非负整数数组nums和一个整数
Tisfy
·
2024-01-24 03:49
题解
#
力扣LeetCode
leetcode
算法
题解
二分
数组
【
LeetCode
】347. 前 K 个高频元素(中等)——代码随想录算法训练营Day13
题目链接:347.前K个高频元素题目描述给你一个整数数组nums和一个整数k,请你返回其中出现频率前k高的元素。你可以按任意顺序返回答案。示例1:输入:nums=[1,1,1,2,2,3],k=2输出:[1,2]示例2:输入:nums=[1],k=1输出:[1]提示:1=0&&this.compare(parent,index)>0){//注意compare参数顺序[this.queue[inde
晴雪月乔
·
2024-01-24 02:12
代码随想录算法训练营
#
LeetCode
栈与队列
算法
代码随想录算法训练营
栈与队列
【
LeetCode
】239. 滑动窗口最大值(困难)——代码随想录算法训练营Day13
题目链接:239.滑动窗口最大值题目描述给你一个整数数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例1:输入:nums=[1,3,-1,-3,5,3,6,7],k=3输出:[3,3,5,5,6,7]解释:滑动窗口的位置最大值--------------------[13-1]-353
晴雪月乔
·
2024-01-24 02:42
代码随想录算法训练营
#
LeetCode
栈与队列
算法
代码随想录算法训练营
栈与队列
二叉树的遍历——代码随想录算法训练营Day14
|
LeetCode
:144.前序遍历,145.后序遍历,94.中序遍历_哔哩哔哩_bilibili1.前序遍历遍历顺序:中左右。
晴雪月乔
·
2024-01-24 02:12
代码随想录算法训练营
代码随想录算法训练营
leetcode
逃离大迷宫
题目链接思路:数学+深搜分析:在一个巨大的网格中,只有一部分障碍阻挡,是否能从一个点到另一个点,首先可以知道,这个巨大的网格中总的格子数相比于障碍是远大于的关系,而且,这个题目网格数是106*106首先不可能单纯的深搜,因为格子数太多了。这里障碍的个数,最多两百,那么可以从这里着手,首先,从一个点到另一个点,只有一个条件。两个点是否有任何一个被障碍围住,如果有,则不可能到达,如果没有,则可到达。那
酱酱熊
·
2024-01-24 02:03
算法
leetcode
算法
职场和发展
leetcode
用 Rand7() 实现 Rand10()
题目链接思路一:拒绝采样分析:rand7()1~7每个概率都是1/7如果我们使用两次然后相乘,将会得到下图结果。很明显,这里的数字1~49并不是每个都是概率一样的。概率是如下这样的。到这里,可以很简单的结束,挑选出10个概率相等的,然后建立和1~10的对应关系,即可。但是这样有个缺点,这样可能调用很多次rand7(),因为你选了10个数,这里一共是25个数,也就是说,丢弃了15个数,很有可能长时间
酱酱熊
·
2024-01-24 02:03
算法
leetcode
算法
职场和发展
leetcode
一次编辑
题目链接思路:模拟分析:其实一共就两种情况第一:长度一样第二:长度不一样长度不一样的时候,当长度差大于1的时候,那么肯定不可能通过一次编辑使他们相等长度不一样的时候,挨个比较,不同的字符最多只能有一个。长度一样的时候,也是挨个比较,不同的字符最多只能有一个。代码:classSolution{publicbooleanoneEditAway(Stringfirst,Stringsecond){int
酱酱熊
·
2024-01-24 02:33
算法
leetcode
算法
职场和发展
LeetCode
-049-字母异位词分组
不考虑答案输出的顺序来源:力扣(
LeetCode
)链接:https://
leetcode
-cn.com/pr
刻苦驴哝
·
2024-01-24 02:31
LeetCode
_10_困难_正则表达式匹配
文章目录1.题目2.思路及代码实现(Python)2.1动态规划1.题目给你一个字符串s和一个字符规律p,请你来实现一个支持'.'和'*'的正则表达式匹配。'.'匹配任意单个字符'*'匹配零个或多个前面的那一个元素所谓匹配,是要涵盖整个字符串s的,而不是部分字符串。示例1:输入:s=“aa”,p=“a”输出:false解释:“a”无法匹配“aa”整个字符串。示例2:输入:s=“aa”,p=“a*”
Lins号丹
·
2024-01-24 01:52
LeetCode进阶之路
leetcode
算法
LeetCode
_11_中等_盛最多水的容器
文章目录1.题目2.思路及代码实现(Python)2.1双指针1.题目给定一个长度为nnn的整数数组heightheightheight。有nnn条垂线,第iii条线的两个端点是(i,0)(i,0)(i,0)和(i,height[i])(i,height[i])(i,height[i])。找出其中的两条线,使得它们与xxx轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾
Lins号丹
·
2024-01-24 01:22
LeetCode进阶之路
leetcode
算法
【算法练习】
leetcode
算法题合集之栈和队列篇
普通栈
LeetCode
20有效的括号
LeetCode
20有效的括号定义一个辅助map,判断字符串的字符是否在]})中。一旦是右括号就要弹出元素,判断匹配。
秋装什么
·
2024-01-24 01:20
算法
算法
leetcode
职场和发展
【算法练习】
leetcode
算法题合集之排序篇
快速排序单路快排获取随机一个元素,元素左边是小于它的,元素右边是大于它的。partition:选择一个元素,交换left。比较nums[left]和nums[i],如果nums[i]=right){return;}intp=partition(nums,left,right);sort(nums,left,p-1);sort(nums,p+1,right);}privateintpartition
秋装什么
·
2024-01-24 01:49
算法
算法
leetcode
排序算法
Leetcode
26——引出c++ vector中erase()的内部原理
erase是对数组中某个元素进行删除的操作,实际的时间复杂度为O(n)预备知识数组在内存中是连续存储的,删除某个位置的时候不能直接删除,只能用后序的元素覆盖以nums数组为例,target为需要删除的目标数据方法:①暴力删除法:每次遇到一个目标删除数据,后续的元素都要往前移动替代它时间复杂度为O(n^2)intdel(vectornums,inttarget){intsize=nums.size(
Nana 10
·
2024-01-24 00:02
刷题
c++
算法
数据结构
c中realloc重新分配大小时,空间增长方式的问题
今天在写
leetcode
T15.三数之和的时候遇到了一个比较奇怪的问题:部分代码:intsize=5;//设置初始解的空间为5个int**res=(int**)malloc(sizeof(int*)*size
Nana 10
·
2024-01-24 00:28
刷题
c语言
算法
开发语言
leetcode
Leetcode
刷题笔记题解(C++):LCR 174. 寻找二叉搜索树中的目标节点
思路:二叉搜索树的中序遍历是有序的从大到小的,故得出中序遍历的结果,即要第cnt大的数为倒数第cnt的数/***Definitionforabinarytreenode.*structTreeNode{*intval;*TreeNode*left;*TreeNode*right;*TreeNode():val(0),left(nullptr),right(nullptr){}*TreeNode(i
Demo.demo
·
2024-01-24 00:24
Leetcode算法题解
leetcode
笔记
c++
Leetcode
刷题笔记题解(C++):LCR 153. 二叉树中和为目标值的路径
思路:利用回溯的思想,回溯的退出条件为当前节点为空,是符合路径的判断条件为路径和为目标值且叶子节点包含了,代码如下:/***Definitionforabinarytreenode.*structTreeNode{*intval;*TreeNode*left;*TreeNode*right;*TreeNode():val(0),left(nullptr),right(nullptr){}*Tree
Demo.demo
·
2024-01-24 00:24
Leetcode算法题解
leetcode
笔记
c++
Leetcode
刷题笔记题解(C++):LCR 102. 目标和
思路:利用回溯去遍历,回溯结束条件为遍历到最后一个数字,如果符合target则目标数+1classSolution{public://记录合为结果的数量intcount=0;intfindTargetSumWays(vector&nums,inttarget){//利用回溯来寻找backtrack(nums,target,0,0);returncount;}voidbacktrack(vector
Demo.demo
·
2024-01-24 00:54
Leetcode算法题解
leetcode
笔记
c++
Leetcode
刷题笔记题解(C++):165. 比较版本号
思路:利用小数点来分开求和,判断和是否相等来推断两个版本号是否一致classSolution{public:intcompareVersion(stringversion1,stringversion2){inti=0;//记录version1的字符下标intj=0;//记录version2的字符下标intnum1=0;//保存version1的和intnum2=0;//保存version2的和w
Demo.demo
·
2024-01-24 00:53
Leetcode算法题解
leetcode
笔记
c++
Leetcode
刷题笔记题解(C++):LCR 121. 寻找目标值 - 二维数组
思路:从左小角或者右上角开始遍历,假设右上角开始遍历,如果当前值大于目标值则列-1;如果当前值小于目标值则行+1,以此遍历来查找目标值;注意col和row的选取classSolution{public:boolfindTargetIn2DPlants(vector>&plants,inttarget){if(plants.size()==0)returnfalse;//定义右上角的坐标值intro
Demo.demo
·
2024-01-24 00:53
Leetcode算法题解
leetcode
笔记
c++
Leetcode
刷题笔记题解(C++):腾讯笔试-假期(动态规划)
思路:动态规划的思路,第i天与第i-1天的活动有关,以及公司营业或者健身房营业都有关如果当天选择休息,则上一天的最小休息值+1即可如果当天选择工作,则等于上一天选择休息或者健身的最小休息值即可如果当天选择健身,则等于上一天选择休息或者工作的最小休息值即可注意的是还要判断当天的公司以及健身房的情况代码如下:#include#include#includeusingnamespacestd;#defi
Demo.demo
·
2024-01-24 00:23
Leetcode算法题解
c++
算法
动态规划
腾讯笔试
Leetcode
刷题笔记题解(C++):92. 反转链表 II
思路:获取要反转的区间,拆开之后进行反转再拼接/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode():val(0),next(nullptr){}*ListNode(intx):val(x),next(nullptr){}*ListNode(intx,ListNode*next):v
Demo.demo
·
2024-01-24 00:23
Leetcode算法题解
leetcode
笔记
c++
Leetcode
刷题笔记题解(C++):BM11 链表相加(二)
思路:先对两个链表进行反转,反转求和注意进位运算,求和完成之后再进行反转得到结果/***structListNode{*intval;*structListNode*next;*ListNode(intx):val(x),next(nullptr){}*};*/#includeclassSolution{public:/***代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
Demo.demo
·
2024-01-24 00:23
Leetcode算法题解
leetcode
笔记
c++
Leetcode
刷题笔记题解(C++):滴滴笔试-餐馆问题(贪心算法)
思路:贪心算法对桌子的容量从小到大进行排序对顾客的消费金额从大到小进行排序,如果金额相同人数少的优先然后进行遍历放置顾客到桌子上,放置之后对桌子状态进行标记,按这个思路写代码即可,注意使用结构体或者map一般结构体还是好用代码如下:#include#include#includeusingnamespacestd;//定义顾客结构体structCustomer{public:intnum;intm
Demo.demo
·
2024-01-24 00:22
Leetcode算法题解
算法
c++
数据结构
滴滴笔试
贪心算法
Leetcode
刷题笔记题解(C++):数字和为sum的方法数
思路:动态规划的思路从0-sum由数组进行组合可以凑成0-sum,具体看图讲一下里面的一个点的含义:比如[5][5]=3;这个点说明如果sum=5,由现有数组组成的方案有3种再如[5][4]=2,说明由数组55102组成的方案有2种动态方程构建思路:1.如果sum=nums[i]则把num[i]作为构成sum的一员,方案数=之前的方案数+构成sum-nums[i]的方案数注意对于构成0的只有1种方
Demo.demo
·
2024-01-24 00:52
Leetcode算法题解
c++
动态规划
leetcode
算法
Leetcode
刷题笔记题解(C++):670. 最大交换
思路:假设数字9923676从右边找最大的数字的下标maxindex,然后向左边寻找小于最大数字的数的下标,直到找到最左边,交换两者得出新的数字,比如从左到右递减的数字如9621则不需要变化,在寻找中记录这种数字classSolution{public:intmaximumSwap(intnum){//转换为字符串strings=to_string(num);//取最右边的为初始最大值intn=s
Demo.demo
·
2024-01-24 00:49
Leetcode算法题解
leetcode
笔记
c++
代码随想录day9--栈,队列
LeetCode
232.用栈实现队列题目描述:请你仅使用两个栈实现先入先出队列。
诗以言志659
·
2024-01-24 00:45
java
前端
服务器
代码随想录day10--栈的应用
LeetCode
20.有效的括号题目描述:给定一个只包括'(',')','{','}','[',']'的字符串s,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。
诗以言志659
·
2024-01-24 00:45
java
开发语言
代码随想录day4--链表进阶
LeetCode
24.两两交换链表中的节点题目描述:给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。
诗以言志659
·
2024-01-24 00:44
链表
算法
数据结构
代码随想录day7--字符串
LeetCode
344.反转字符串题目描述:编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。
诗以言志659
·
2024-01-24 00:14
javascript
开发语言
ecmascript
代码随想录day3--链表
LeetCode
203.移除链表元素题目描述:给你一个链表的头节点head和一个整数val,请你删除链表中所有满足Node.val==val的节点,并返回新的头节点。
诗以言志659
·
2024-01-24 00:44
链表
算法
数据结构
上一页
85
86
87
88
89
90
91
92
下一页
按字母分类:
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
其他