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
#双指针
双指针
系列① -- 三数之和
文章目录题目概述解题思路代码实现小总结题目概述此题对应力扣15.三数之和给你一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b,c,使得a+b+c=0?请你找出所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。示例1:输入:nums=[-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例2:输入:nums=[]输出:[]示例3:输入:nu
十八岁讨厌编程
·
2023-10-31 03:37
LeetCode
开发语言
java
leetcode
LeetCode(力扣)有序数组的平方之
双指针
解法Java
题目要求:给定一个按非递减顺序排序的整数数组A,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。示例1:输入:[-4,-1,0,3,10]输出:[0,1,9,16,100]示例2:输入:[-7,-3,2,3,11]输出:[4,9,9,49,121]思路:观察题目,可以发现,因为已知数组是升序排列的,那也就是说,当原数组平方后,以0为中心,之前的负数部分是降序排列的,之前的正数部分仍然是升序
大王我亲自来巡山
·
2023-10-31 03:36
算法学习
leetcode
java
算法
双指针
数据结构
力扣移除元素【
双指针
java】【暴力双循环c++】
文章目录题目思路双循环暴力解决(c++)双【快慢】指针法(java)其他题目给你一个数组nums和一个值val,你需要原地移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用O(1)额外空间并原地修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。思路因为数组中的元素在内存地址中是连续的,所以不能单独删除某个元素,只能覆盖。可以用时间复
长发巴卫
·
2023-10-31 03:36
#
每日一题
leetcode
java
c++
c语言
双指针
求三数之和,三数之和(排序+
双指针
)
示例:给定数组nums=[-1,0,1,2,-1,-4],满足要求的三元组集合为:[[-1,0,1],[-1,-1,2]]2解题(Java)2.1解题思路暴力法搜索为O(N^3)时间复杂度,可通过
双指针
动态消去无效
夏朱
·
2023-10-31 03:35
c语言双指针求三数之和
三数之和(Java)(中等)(
双指针
)
示例1:输入:nums=[-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例2:输入:nums=[]输出:[]示例3:输入:nums=[0]输出:[]思路:排序+
双指针
具体思路如下
Jia_shuzhan
·
2023-10-31 03:05
leetcode
java
算法
LeetCode 三数之和 Java
双指针
题目描述:给你一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b,c,使得a+b+c=0?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。示例:给定数组nums=[-1,0,1,2,-1,-4],满足要求的三元组集合为:[[-1,0,1],[-1,-1,2]]相似题目最接近的三数之和四数之和来源:力扣(LeetCode)链接:https://leetco
滘
·
2023-10-31 03:05
LeetCode
指针
leetcode
算法
力扣:三数之和java代码
使用
双指针
的left和right,遍历指针i,left为i+1,right为数组长度的-1.。通过num[i]+num[right]+num[left]是大于还是等于或者小于来判断
双指针
的移动。
秃小弟
·
2023-10-31 03:35
java
leetcode
数据结构
接雨水 DP
双指针
力扣接雨水publicclass接雨水{publicstaticinttrap(int[]height){intres=0;intlen=height.length;int[]maxLeft=newint[len];//存i左边最高的高度int[]maxRight=newint[len];//存i右边最高的高度maxLeft[0]=0;maxRight[len-1]=0;//DPfor(inti=
兑生
·
2023-10-31 03:31
力扣
hot100
算法
力扣热门100题——三数之和(排序+
双指针
)
5、三数之和1.问题描述给你一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b,c,使得a+b+c=0?请你找出所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。2.示例示例1:输入:nums=[-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例2:输入:nums=[]输出:[]示例3:输入:nums=[0]输出:[]3.提示0>thr
humor2020
·
2023-10-31 03:01
力扣刷题
java
力扣
算法
四数之和-力扣18-java排序+
双指针
一、题目描述给你一个由n个整数组成的数组nums,和一个目标值target。请你找出并返回满足下述全部条件且不重复的四元组[nums[a],nums[b],nums[c],nums[d]](若两个四元组元素一一对应,则认为两个四元组重复):0>fourSum(int[]nums,inttarget){intlen=nums.length;List>ans=newArrayList0&&nums[a
TLJava^v^
·
2023-10-31 03:30
#
力扣-java
力扣
java
四数之和
排序
双指针
力扣15.三数之和(java
双指针
解法)
题目描述:给你一个整数数组nums,判断是否存在三元组[nums[i],nums[j],nums[k]]满足i!=j、i!=k且j!=k,同时还满足nums[i]+nums[j]+nums[k]==0。请你返回所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。解题思路:我们将问题分解为两个待解决的问题:1.如何实现不重复2.如何更高效的实现输出和为0且不重复的三元组1.如何实现不重复
LNsupermali
·
2023-10-31 03:30
力扣题目
leetcode
算法
数据结构
三数之和-力扣15-java排序+
双指针
一、题目描述给你一个整数数组nums,判断是否存在三元组[nums[i],nums[j],nums[k]]满足i!=j、i!=k且j!=k,同时还满足nums[i]+nums[j]+nums[k]==0。请你返回所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。示例1:输入:nums=[-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]解释:nums[0]+
TLJava^v^
·
2023-10-31 03:59
#
力扣-java
力扣
java
三数之和
排序
双指针
最接近的三数之和-力扣16-java排序+
双指针
一、题目描述给你一个长度为n的整数数组nums和一个目标值target。请你从nums中选出三个整数,使它们的和与target最接近。返回这三个数的和。假定每组输入只存在恰好一个解。示例1:输入:nums=[-1,2,1,-4],target=1输出:2解释:与target最接近的和是2(-1+2+1=2)。示例2:输入:nums=[0,0,0],target=1输出:0来源:力扣(LeetCod
TLJava^v^
·
2023-10-31 03:59
#
力扣-java
力扣
java
三数之和
最接近
排序
力扣 三数之和
双指针
java
Problem:15.三数之和时间复杂度:O(n2)O(n^2)O(n2)ACcodeclassSolution{publicList>threeSum(int[]nums){List>res=newArrayList0)break;if(i>0&&nums[i]==nums[i-1])//去重第一个选的数continue;intl=i+1;intr=len-1;while(l0)//加小一点r-
兑生
·
2023-10-31 03:58
力扣
hot100
leetcode
算法
算法训练营 day2 数组 有序数组 长度最小的子数组 螺旋矩阵
算法训练营day2数组|有序数组长度最小的子数组螺旋矩阵有序数组的平方
双指针
法的经典题目977.有序数组的平方-力扣(LeetCode)给你一个按非递减顺序排序的整数数组nums,返回每个数字的平方组成的新数组
还是选择了面包
·
2023-10-30 21:49
训练营
算法
矩阵
leetcode
算法训练day2有序数组的平方 长度最小的子数组 螺旋矩阵II
文章目录有序数组的平方暴力题解
双指针
长度最小的子数组滑动窗口题解(本质还是
双指针
)[螺旋矩阵II](https://leetcode.cn/problems/spiral-matrix-ii/description
泷fyk
·
2023-10-30 21:18
算法训练
算法
leetcode
数据结构
02 数组 有序数组的平方+长度最小的子数组
代码随想录,第二天力扣977.有序数组的平方
双指针
法Python版本classSolution:defsortedSquares(self,nums:List[int])->List[int]:n=len
一蓑烟雨6
·
2023-10-30 21:17
leetcode
算法
python
代码随想录Day4-数组-有序数组的平方&长度最小的子数组:力扣977、209、904题
977.有序数组的平方题目链接代码随想录文章讲解链接方法一:
双指针
两头向中间遍历思路比较左右两端的元素的平方的大小,选取大的放置到结果数组的末端,然后向中间遍历。
猪扒已出闸
·
2023-10-30 21:13
代码随想录
leetcode
算法
c++
算法通关村第三关 | 数组
双指针
1.
双指针
思想在数组中,所谓
双指针
就是两个变量,不一定真的是指针,
双指针
在处理数组,字符串场景下很常见,例子:从下面序列中删除重复元素,[1,2,2,2,3,3,3,3,5,5,7,8],重复元素只保留一个
我爱学算法
·
2023-10-30 20:58
算法通关村专栏
算法
LeetCode每日一题JAVA、JavaSrcipt题解——2022.08.21-08.31
title:2022-08-21-1455-检查单词是否为句中其他单词的前缀date:2022-08-2115:01:12tags:[DailyPractice,简单题,字符串,
双指针
,模拟]categories
[山青花欲燃]
·
2023-10-30 20:33
LeetCode
leetcode
java
深度优先
【LeetCode每日一题】——2540.最小公共值
文章目录一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【解题思路】七【题目提示】八【时间频度】九【代码实现】十【提交结果】一【题目类别】
双指针
二【题目难度】简单三【题目编号】2540
IronmanJay
·
2023-10-30 20:58
LeetCode
算法
LeetCode
数据结构
双指针
最小公共值
25期代码随想录算法训练营第三天 | 链表 part 2
目录24.两两交换链表中的节点19.删除链表的倒数第N个节点面试题02.07.链表相交142.环形链表II24.两两交换链表中的节点链接
双指针
#Definitionforsingly-linkedlist
enzoherewj
·
2023-10-30 16:46
算法训练营二刷
算法
链表
数据结构
LeetCode热题100——
双指针
双指针
1.移动零2.盛最多水的容器3.三数之和1.移动零给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。
RichExplorer
·
2023-10-30 12:46
LeetCode
leetcode
算法
数据结构
三种快排算法理解
快速排序算法主要分为以下几步:1)选择基准值2)
双指针
操作将小于基准的放左边,大于的放右边3)重复2操作,直至结束快速排序算法是利用排序轮数不变,每轮排序只比较了log2n次来提高排序速度,这与堆排序,
gaoganghua
·
2023-10-30 11:19
算法
数据结构
实现 strStr(),459.重复的子字符串,字符串总结,
双指针
回顾
28.实现strStr()题目链接:28.找出字符串中第一个匹配项的下标思路该题是KMP算法的实现,分两步走:(1)构造next数组;(2)利用next数组求解匹配情况;这两步也大致相同都是:①循环处理不匹配情况;②处理匹配情况;③更新next数组/处理结果;代码实现classSolution{public:intstrStr(stringhaystack,stringneedle){//求nex
Jamie super Cool
·
2023-10-30 05:01
算法
《LeetCode系列》---合并两个有序数组
今天的这道leetcode题,将通过逆向
双指针
来进行解决。
星河栀染
·
2023-10-30 01:28
LeetCode
java
后端
leetcode
LeetCode88—合并两个有序数组(java版)
题目描述:标签:数组
双指针
排序给你两个有序整数数组nums1和nums2,请你将nums2合并到nums1中,使nums1成为一个有序数组。初始化nums1和nums2的元素数量分别为m和n。
陈粑粑的小白鞋
·
2023-10-30 01:57
LeetCode
leetcode
java
Leetcode-88:合并两个有序数组
题目链接法一:逐个比较,逐个移动时间复杂度:O(n^2)空间复杂度:O(1)法二:
双指针
遍历,借助一个额外空间,先利用
双指针
将排序结果存于该空间,后用for循环逐个移至原数组时间复杂度:O(n)空间复杂度
柳家山头号矿工
·
2023-10-30 01:26
Leetcode刷题集
算法
LeetCode题:88合并两个有序数组,283移动零,448找到所有数组中消失的数字
目录88合并两个有序数组1、题目要求2、解题思路(1)、暴力解法:(2)、
双指针
,使用第三数组的解法:3、代码展示(1)、暴力解法:(2)、
双指针
,使用第三数组的解法:283移动零1、题目要求2、解题思路
双指针
法
tao滔不绝
·
2023-10-30 01:55
LeetCode题
leetcode
算法
职场和发展
leetcode 97. 交错字符串
题目链接这题目真的很容易想到
双指针
。。。。思路:动态规划分析:如果两边长度不一样,那么肯定不行。dp[i][j]=true表示s1的前i个字符和s2的前j个字符能拼出来s3的前i+j个字符。
酱酱熊
·
2023-10-29 23:18
算法
leetcode
算法
动态规划
leetcode经典面试150题---3.删除有序数组中的重复项
目录题目描述前置知识代码方法一
双指针
思路图解实现复杂度题目描述给你一个非严格递增排列的数组nums,请你原地删除重复出现的元素,使每个元素只出现一次,返回删除后数组的新长度。
寻寒
·
2023-10-29 23:10
leetcode
面试
算法
LeetCode经典面试150题-day3(删除有序数组的重复项)
和大于0的情况⑵、删除重复项,保证数组中每个元素唯一,可以理解为挑出数组中所有的不同项,在原有数组的基础上进行覆盖(或者可以组合成为一个新的数组,前提是要知道数组的大小,因为需要初始化)⑶、我们还是采用
双指针
的方法来解决问题
大黄冲~鸭
·
2023-10-29 23:09
leetcode
面试
算法
面试经典 150 题--80-- 删除有序数组中的重复项 II(
双指针
)
目录80--删除有序数组中的重复项II解题思路代码80--删除有序数组中的重复项II给你一个有序数组nums,请你原地删除重复出现的元素,使得出现次数超过两次的元素只出现两次,返回删除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用O(1)额外空间的条件下完成。示例1:输入:nums=[1,1,1,2,2,3]输出:5,nums=[1,1,2,2,3]解释:函数应返回新长度
----K1
·
2023-10-29 23:37
面试经典
150
题
C语言基础
每日一练
算法
c语言
leetcode
leetcode经典面试150题---4.删除有序数组中的重复项II
目录题目描述前置知识代码方法一
双指针
思路图解实现复杂度题目描述给你一个有序数组nums,请你原地删除重复出现的元素,使得出现次数超过两次的元素只出现两次,返回删除后数组的新长度。
寻寒
·
2023-10-29 23:07
算法
数据结构
leetcode
LeetCode 541 反转字符串II
知识点
双指针
反转字符串/直接利用return判断条件带回/多段函数的思想C语言代码实现//利用
双指针
反转字符串。
Sivan_Xin
·
2023-10-29 22:50
leetcode
算法
c语言
LeetCode 541 反转字符串 II --
双指针
法
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/reverse-string-ii给定一个字符串s和一个整数k,从字符串开头算起,每计数至2k个字符,就反转这2k字符中的前k个字符。如果剩余字符少于k个,则将剩余字符全部反转。如果剩余字符小于2k但大于或等于k个,则反转前k个字符,其余字符保持原样。示例1:输入:s=“abcdefg”,k=2输
大家好我是Boger
·
2023-10-29 22:16
LeetCode刷题笔记
#
字符串类题目
leetcode
算法
职场和发展
【数据结构与算法】——顺序表相关OJ面试题:移除元素、合并两个有序数组
来源:leetcode,题目链接:1.移除元素2.合并两个有序数组目录移除元素题目描述解题思路思路一:覆盖思路二:以空间换时间思路三:
双指针
思路三代码实现样例结果合并两个有序数组题目描述解题思路代码实现样例结果移除元素题目描述给你一个数组
Alter_r
·
2023-10-29 21:14
数据结构与算法(C语言版)
c语言
算法
leetcode
职场和发展
【数据结构练习题】删除有序数组中的重复项
3.我们可以用类似
双指针
的方法,创建两个下标src和dest,通过前后元素的对比,若不同,则将dest位
小钱编程成长记
·
2023-10-29 20:16
数据结构练习题
数据结构
学习
c语言
软件工程
学习方法
开发语言
142.环形链表
于是引出了
双指针
中的快慢指针来解决。设定两个指针fast,slow,fast每次走两步,slow每次走一步
每天存两块
·
2023-10-29 19:26
数据结构与算法
链表
数据结构
125. 验证回文串
示例1:输入:"Aman,aplan,acanal:Panama"输出:true示例2:输入:"raceacar"输出:false思路
双指针
遍历。
软饭王
·
2023-10-29 19:54
代码随想录:day2数组完结
有序数组的平方因为数组里有负数,所以
双指针
其实是开头结尾开始向中间走。同时额外创建了数组承接结果。以空间换时间。长度最小的子数组滑动窗口法。也是
双指针
,但是指针是一前一后从前往后走。
qq_45789731
·
2023-10-29 17:43
算法
leetcode
数据结构
力扣刷题:反转链表 2023.6.27
双指针
法版本1:不能这样。虽然使temp指向了new的一个新的对象(称为a),但是,当temp=cur时,temp便指向了cur,new的那个对象a便被遗弃了,没有东西指向它。要注意引用传递!
葛葛不入
·
2023-10-29 16:17
leetcode
链表
算法
leetcode125验证回文串
defisPalindrome(s):'''验证回文串很简单
双指针
但是字符串查找回文串比较难'''strs=''ifs=='':###定义空字符是回文串returnTrueforiins:ifi.isdigit
fairy净
·
2023-10-29 15:27
算法-leetcode
双指针
LeetCode 125 验证回文串 C++
解法解法1:
双指针
1.遍历整个字符串2.遇到空格,i++orj--3.转换为小写后比较是否相等,出现不等的情况returnb
宿琪笙fly
·
2023-10-29 15:55
字符串
leetcode
算法
LeetCode 125 验证回文串 Python3
1、
双指针
左右对比这里主要学习一下Python3中字符串相关函数str.lower()#所有大写字符转换为小写str.isalnum()#检测字符串是否由字母和数字组成ord(c)#返回对应的ASCII
mxxxkuku
·
2023-10-29 15:22
LeetCode
20211016leetcode【3,79,17need again】
leetcode10.16日1、二叉树的层序遍历(done)2、从前序与中序遍历序列构造二叉树(done)3、二叉树展开为链表(……`needagain`)4、两数之和-哈希表(done)5、有序两数之和-
双指针
法
Xiaoshuang_Cao
·
2023-10-29 14:42
leetcode
查找单链表中的倒数第k个节点-Java数据结构和算法
面试题专栏文章目录一、问题描述:二、解决方案1.双遍历2.
双指针
一、问题描述:新浪面试题:查找单链表中倒数第k个节点,输出节点信息即可。
开朗的大蒜
·
2023-10-29 14:41
Java数据结构和算法学习
面试题
链表
算法
双指针
单链表
链表--链表相交 leetcode面试题 02.07
两个链表相交思路暴破法采用双循环,从第一个链表第一个开始依次寻找第二个链表中的结点是否相同,这样下来时间复杂度为O(n*n),空间复杂度为O(1)哈希法将第一个结点存入哈希表中,然后遍历第二个链表的结点判断是否有相同的结点
双指针
法以上图为例
Pig_deng饲养员
·
2023-10-29 12:08
贪心算法练习
一、P455分发饼干一眼
双指针
,略二、P376摆动序列被难住了,看题解有2个解法,分别是动态规划和贪心;动态规划:有2个重要的概念:某个序列被称为「上升摆动序列」,当且仅当该序列是摆动序列,且最后一个元素呈上升趋势
似水恰流年
·
2023-10-29 10:21
python
pandas
机器学习
力扣刷题笔记
思路
双指针
首先定义一个cur指针,指向头结点,再定义一个pre指针,初始化为null。然后就要开始反转了,首先要把cur->next节点用tmp指针保存一下,也就是保存一下这个节点。
Breeze°
·
2023-10-29 10:51
leetcode
笔记
算法
上一页
30
31
32
33
34
35
36
37
下一页
按字母分类:
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
其他