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-双指针
算法:
双指针
解决数组划分和数组分块问题
文章目录实现原理实现思路典型例题移动0复写0快乐数盛最多水的容器有效三角形的个数三数之和四数之和总结在快速排序或者是其他和数组有关的题目中,有很经典的一类题目是关于数组划分的,数组划分就是把数组按照一定的规则划分为不同的区间,使得达到某种目的首先先看实现的原理是什么实现原理两个指针的作用?cur:从左向右扫描数组,遍历数组dest:已处理的区间内,非零元素的最后一个位置数组划分就是把数组划分成三个
海绵宝宝de派小星
·
2023-08-17 12:50
#
算法
C++
习题集
算法
游游的选数乘积-2022年携程秋招第四批
此问题常见的做法是采用
双指针
,(1)先对数组升序排序,(2)设定两个指针初值为L=1,R=n,L=1,R=n,while(L=X;这样对于a[R]来说,a[
sigd
·
2023-08-17 12:35
算法
算法
数据结构
leetcode 力扣刷题 数组交集(数组、set、map都可实现哈希表)
数组交集349.两个数组的交集排序+
双指针
数组实现哈希表unordered_setunordered_map350.两个数组的交集Ⅱ排序+
双指针
数组实现哈希表unordered_map349.两个数组的交集题目链接
PleaseBrave
·
2023-08-17 11:12
力扣刷题
leetcode
散列表
算法
哈希表
C++
stl
代码随想录day10-字符串(2)
代码随想录day10-字符串(2)&
双指针
总结1、LeetCode151反转字符串中的所有单词题目分析:本题要求反转字字符串中的所有单词,并且要求我们去除多余的空格,比如连续的空格,前导空格,以及尾随空格等等
m0_45172994
·
2023-08-17 10:18
代码随想录刷题
leetcode
散列表
数据结构
LeetCode-
数组篇
二分查找和滑动窗口二分查找我觉得可以跳过这下面三个方式,直接到第二点4种问法,解决一切二分法一、寻找一个数(基本的二分搜索)二、寻找左侧边界的二分搜索三、寻找右侧边界的二分查找②.二分查找的4种问法1.左闭右闭区间2.左闭右开区间3.左开右开区间二分查找我觉得可以跳过这下面三个方式,直接到第二点4种问法,解决一切二分法 你真的懂二分查找吗? 曾经我以为我也是懂二分查找的,就是浅浅的通过几道力扣
Red-P
·
2023-08-17 10:48
数组
算法
数据结构
牛客网【面试必刷TOP101】~ 09
双指针
牛客网【面试必刷TOP101】~09
双指针
文章目录牛客网【面试必刷TOP101】~09
双指针
@[toc]BM87合并两个有序的数组(★)BM88判断是否为回文字符串(★)BM89合并区间(★★)BM90
白鳯
·
2023-08-17 00:46
双指针
Java
算法
面试
程序人生
Leetcode-
每日一题【剑指 Offer 32 - I. 从上到下打印二叉树】
题目从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。例如:给定二叉树:[3,9,20,null,null,15,7],3/\920/\157返回:[3,9,20,15,7]提示:节点总数queue=newLinkedListres=newArrayList<>();queue.add(root);while(!queue.isEmpty()){TreeNodecur=queue
jiaoer~~
·
2023-08-16 22:47
leetcode
算法
职场和发展
java
数据结构
Leetcode-
每日一题【剑指 Offer 31. 栈的压入、弹出序列】
题目输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如,序列{1,2,3,4,5}是某栈的压栈序列,序列{4,5,3,2,1}是该压栈序列对应的一个弹出序列,但{4,3,5,1,2}就不可能是该压栈序列的弹出序列。示例1:输入:pushed=[1,2,3,4,5],popped=[4,5,3,2,1]输出:true解释:我们可以按
jiaoer~~
·
2023-08-16 22:16
leetcode
算法
职场和发展
java
代码随想录算法训练营第58天|动态规划part15|392.判断子序列、115.不同的子序列
代码随想录算法训练营第58天|动态规划part15|392.判断子序列、115.不同的子序列392.判断子序列392.判断子序列思路:(这道题也可以用
双指针
的思路来实现,时间复杂度也是O(n))这道题应该算是编辑距离的入门题目
gengjiahao
·
2023-08-16 20:35
算法
动态规划
leetcode hot 100-15. 三数之和
示例:给定数组nums=[-1,0,1,2,-1,-4],满足要求的三元组集合为:[[-1,0,1],[-1,-1,2]]思路:
双指针
法思路参考:https://leetcode-cn.com/problems
Lucky小黄人
·
2023-08-16 18:05
数据结构
leetcode
算法
快速排序
排序算法
【LeetCode26.删除有序数组中的重复项】——
双指针
法
26.删除有序数组中的重复项给你一个升序排列的数组nums,请你原地删除重复出现的元素,使每个元素只出现一次,返回删除后数组的新长度。元素的相对顺序应该保持一致。由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分。更规范地说,如果在删除重复项之后有k个元素,那么nums的前k个元素应该保存最终结果。将最终结果插入nums的前k个位置后返回k。不要使用额外的空间,你必须在原
木瓜星灵TT
·
2023-08-16 12:47
LeetCode学习笔记
leetcode
算法
数据结构
【leetcode刷题笔记】七、删除有序数组中的重复项
今天的题仍然是考察数组操作的简单题目,在这个题里用到了快慢指针的这样一个思想,通过
双指针
实现对原数组的修改以及对数组长度的确定。
z1k
·
2023-08-16 12:47
刷题
java
数据结构
算法
leetcode笔记总结——(4)删除有序数组中的重复项(python和C++实现)
目录1、题目描述2、思路3、代码实现(1)python代码:(2)C++代码:4、总结:1、题目描述2、思路使用
双指针
来求解。因为给定数组是有序的,所以相同元素必然连续。
Ma Sizhou
·
2023-08-16 12:46
力扣-leetcode算法题
【LeetCode刷题笔记92-26.删除有序数组中的重复项】
今天这题按照他的要求做就可以了,直接使用
双指针
。
空、白、
·
2023-08-16 12:16
算法
leetcode
c++
算法
删除有序数组中的重复项 II(
双指针
)
文章目录前言一、编程题:876.链表的中间结点(
双指针
思路)1.题目描述2.示例1:3.示例2:4.提示:二、解题思路1.思路三、代码实
我是夜阑的狗
·
2023-08-16 12:14
#
LeetCode
数组篇
leetcode
算法
数据结构
java
leetcode611. 有效三角形的个数(java)
有效三角形的个数有效三角形的个数排序加二分排序+
双指针
上期算法有效三角形的个数给定一个包含非负整数的数组nums,返回其中可以组成三角形三条边的三元组个数。
SP_1024
·
2023-08-16 07:11
数据结构
算法
java
java
算法
leetcode
数据结构
排序算法
LC-链表的中间节点(
双指针
)
LC-链表的中间节点(
双指针
)链接:https://leetcode.cn/problems/middle-of-the-linked-list/description/描述:给你单链表的头结点head
KGF886
·
2023-08-16 04:16
数据结构与算法
链表
数据结构
小黑day2喀纳斯探寻湖怪之旅,中午跟团喝大乌苏,下午漂流师弟趟水脚被划破,一瘸一拐地爬观鱼台的leetcode之旅:1004. 最大连续1的个数 III
小黑代码classSolution:deflongestOnes(self,nums:List[int],k:int)->int:#中间变量数组arr=nums[:]#
双指针
head=0tail=0#数组长度
小黑无敌
·
2023-08-16 03:44
小黑的日常leetcode之旅
leetcode
算法
职场和发展
小黑day5那拉提空中草原上午因下雨关闭改去河谷草原,下午薰衣草基地,入住伊宁江苏酒店附近吃当地特色羊肉串的leetcode之旅:209. 长度最小的子数组
小黑代码classSolution:defminSubArrayLen(self,target:int,nums:List[int])->int:#数组长度n=len(nums)#定义
双指针
head=0tail
小黑无敌
·
2023-08-16 03:13
小黑的日常leetcode之旅
leetcode
算法
职场和发展
LeetCode-
二叉树遍历-94中序+144前序+145后序-(递归/迭代/Morris)
中序遍历:递归:classSolution{public:voidmidOrder(TreeNode*root,vector&ans){if(!root)return;midOrder(root->left,ans);ans.push_back(root->val);midOrder(root->right,ans);}vectorinorderTraversal(TreeNode*root){v
oooozoo
·
2023-08-16 00:43
LeetCode
算法
c++
LeetCode-
七进制数、最小高度二叉搜索树
只是为了记录每天的练习(要好好加油啊呜呜呜现在的我还太拉了思路很直接啊……就是转进制+数字转字符串。classSolution{public:stringconvertToBase7(intnum){if(num==0)//特殊情况return"0";constintsystem=7;//使其普遍适用于n进制boolflag;//记录num的正负性flag=num>0?true:false;str
oooozoo
·
2023-08-16 00:42
LeetCode
leetcode
算法
职场和发展
算法总结,不断更新
文章目录摩尔投票法DFS算法BFS算法
双指针
滑动窗口动态规划回溯并查集算法贪心算法二分查找计数排序题源来自于力扣网摩尔投票法适用场景如何在选票无序的情况下,选出获胜者。
summer_du
·
2023-08-15 15:26
算法
算法
排序算法
数据结构
【leetcode】第一章数组-2
977.有序数组的平方简单的方法是平方后使用排序方法第2种方法是
双指针
方法,从两边进行判断,将最大的从后往前放publicstaticint[]sortedSquares(int[]nums){//输入
编程小白呀
·
2023-08-15 13:30
刷题
leetcode
算法
数据结构
leetcode 42-接雨水
解法一:
双指针
(暴力按列计算)首先,如果按照列来计算的话,宽度一定是1了,我们再把每一列的雨水的高度求出来就可以了。
NLP菜鸟
·
2023-08-15 09:56
Leetcode
leetcode
算法
职场和发展
剑指 Offer 57 - II. 和为s的连续正数序列python
题目描述:题解:
双指针
参考剑指Offer57-II.和为s的连续正数序列(python)_jhsignal的博客-CSDN博客1.目的是构造一个和等于target的连续数组,i和j表示该数组值(不是下标
岗岗ganggang
·
2023-08-15 03:42
剑指offer
leetcode双指针
python
动态规划
leetcode
leetcode-
剑指 Offer 57 - II. 和为s的连续正数序列
leetcode-
剑指Offer57-II.和为s的连续正数序列输入一个正整数target,输出所有和为target的连续正整数序列(至少含有两个数)。
ITAK_fans
·
2023-08-15 03:41
剑指offer
leetcode
代码随想录一刷总结
收获数组:数组的题目和考研时的数据结构差不多链表:
双指针
法很方便哈希表:可以直接用地址映射哈希,也可以用HashSet,HashMap字符串:KMP算法中的
乱世在摸鱼
·
2023-08-14 23:12
算法
数据结构
leetcode
java
Leetcode链表篇 Day3
.24.两两交换链表中的节点-力扣(LeetCode)1.构建虚拟结点2.两两一组,前继结点一定在两两的前面3.保存结点1和结点319.删除链表的倒数第N个结点-力扣(LeetCode)1.
双指针
:快慢指针两个指针的差值即为
OvO_______
·
2023-08-14 23:03
leetcode
Leetcode数组篇 Day1
移除元素(暴力版)1.注意越界问题:j=i+1起点,j
双指针版)1.快慢指针,新数组就是不含有目标元素的数组快:获取新数组中的元素慢:获取新数组需更新位置2.慢指针最终位置即为新数组长度备注
OvO_______
·
2023-08-14 23:02
leetcode
算法
职场和发展
常用算法代码模板总结
持续更新中......目录快速排序归并排序堆排序前缀和与差分(一维、二维)并查集整数二分、浮点二分去除数组中重复的元素(
双指针
)求最大公约数求最小公倍数求素数(欧拉筛)高精度加法(C++)
算不出来没办法
·
2023-08-14 20:05
数据结构与算法
leetcode
算法
排序算法
leetcode - 75. 颜色分类(java)
颜色分类leetcode-75.颜色分类题目描述
双指针
代码演示
双指针
算法专题leetcode-75.颜色分类难度-中等原题链接-颜色分类题目描述给定一个包含红色、白色和蓝色、共n个元素的数组nums,原地对它们进行排序
SP_1024
·
2023-08-14 20:59
java
算法
数据结构
leetcode
java
算法
数据结构
LeetCode--HOT100题(30)
LeetCode做题链接:
LeetCode-
两两交换链表中的节点示例1:输入:head=[1,2,3,4]输出:[2,1,4,3]示例2:输入:hea
爱学习的小健
·
2023-08-14 19:53
LeetCodeHot100
leetcode
算法
LeetCode--HOT100题(29)
LeetCode做题链接:
LeetCode-
删除链表的倒数第N个结点示例1:输入:head=[1,2,3,4,5],n=2输出:[1,2,3,5]示例2:输入:head=[1],n=1输出:[]示例3:
爱学习的小健
·
2023-08-14 19:22
LeetCodeHot100
leetcode
算法
LeetCode-
分发饼干
题目链接=>戳这里题目截图解析这道题是典型的贪心算法,其实就是求局部最优解,这道题的每个局部其实就是要求用最小的饼干去满足孩子的胃口。那我们可以将饼干和孩子的胃口都排下序,然后遍历孩子和饼干,每次找到的第一个满足cookie[i]>=child[j]的,就是满足条件的饼干,这时,满足的孩子数可以加1,然后遍历下一个孩子,和下一个饼干;解法classSolution{publicintfindCon
沙漠小舟
·
2023-08-14 17:35
合并两个有序数组 &
双指针
& 辅助数组 & 8.13打卡
文章目录题目思路代码题目88.合并两个有序数组难度:简单描述:给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m+n,其中前m个元素表示应合并的元素,
万物皆可der
·
2023-08-14 16:03
暑期算法冲刺
leetcode
算法
数据结构
2023杭电第八场补题报告1005 1007 1010
2023杭电第八场补题报告10051007101010050vs1(hdu.edu.cn)思路直接考虑左右两端,当两端都可以选择且内层不连续时,还需要再往内侧考虑两层,分类讨论
双指针
模拟即可。
ablity_66
·
2023-08-14 14:02
2023暑假多校
算法
Leetcode-
每日一题【剑指 Offer 29. 顺时针打印矩阵】
题目输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。示例1:输入:matrix=[[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5]示例2:输入:matrix=[[1,2,3,4],[5,6,7,8],[9,10,11,12]]输出:[1,2,3,4,8,12,11,10,9,5,6,7]限制:0=l;j--)),遍历结束后第b行的元素已经全
jiaoer~~
·
2023-08-14 11:31
leetcode
算法
职场和发展
java
数据结构
2.4 反转链表
示例:输入:1->2->3->4->5->NULL输出:5->4->3->2->1->NULL②思路
双指针
法:一个指针指向前一个(prev),一个指针指向当前元素(cur),通过将next->prev来达到反转递归
双指针
法
码智
·
2023-08-14 09:25
算法
链表
数据结构
leetcode
【每日一题Day294】LC88合并两个有序数组 |
双指针
合并两个有序数组【LC88】给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。**注意:**最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m+n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。n
TIkitianya
·
2023-08-14 05:20
每日一题
双指针
leetcode
【算法——
双指针
】LeetCode 1089 复写零
千万不要被这道题标注着“简单”迷惑了,实际上需要注意的细节很多。题目描述:解题思路:正序遍历,确定结果数组的最后一个元素所在的位置;知道最后一个元素的位置后倒序进行填充。先找到最后一个需要复写的数先判断cur位置的值决定dest向后移动一步还是两步判断dest是否已经到结束位置cur++处理边界情况(dest超过arr.size()-1的情况)从后向前完成复写的操作代码:classSolution
Cassooo_
·
2023-08-14 00:05
刷题
leetcode
数据结构
算法
【算法——
双指针
】LeetCode 283 移动零
题目描述:思路:(
双指针
)O(n)O(n)O(n)给定一个数组nums,要求我们将所有的0移动到数组的末尾,同时保持非零元素的相对顺序。
Cassooo_
·
2023-08-14 00:04
刷题
leetcode
算法
Day 02
:typenums:List[int]:rtype:List[int]"""foriinrange(len(nums)):nums[i]=nums[i]**2nums.sort()returnnums
双指针
法数组平方的最大值就在数组的两端
m0_56381570
·
2023-08-13 21:18
算法
双指针
算法
文章目录
双指针
算法leetcode题目
双指针
算法
双指针
算法可以实现对于时间复杂度降一维度,使得O(n2)的算法时间复杂度变为O(n)指针类型对撞指针快慢指针对撞指针一般是用于顺序结构中的,也可以称为左右指针
小王学代码
·
2023-08-13 18:19
数据结构和算法
算法
双指针算法
对撞指针
快慢指针
LeetCode——875.爱吃香蕉的珂珂
思路:这里我的思路跟之前的
双指针
分巧克力是一样的,我们找到理论上的最小值,然后找到最大值,然后二分查找找到满足条件的最小的值即可。
玄昌盛不会编程
·
2023-08-13 18:45
leetcode
算法
java
二分查找
双指针
【
双指针
_快乐数_C++】
题目解析快乐数算法原理快慢
双指针
1、定义快慢指针2、慢指针每次向后移动一步,快指针每次向后移动两步。
MegaDataFlowers
·
2023-08-13 17:22
双指针算法
c++
开发语言
【
双指针
_复写零_C++】
[1,0,2,3,0,4,5,0][1,0,0,2,3,0,0,4]算法原理
双指针
算法先根据“异地操作”,然后优化为
双指针
下的“就地”操作需要从后向前操作1.先找到最后一个需要“复写”的数使
MegaDataFlowers
·
2023-08-13 17:21
双指针算法
c++
开发语言
【
双指针
_盛最多水的容器_C++】
题目解析盛最多水的容器算法原理向内枚举:weight一定会减小height不是不变就是减小要求的是盛水最多的容器,那么这些枚举情况就不需要。拿比较小的数去向内枚举,v一直在减小,所以说直接排除编写代码classSolution{public:intmaxArea(vector&height){intleft=0;intright=height.size()-1;intsum=0;while(lef
MegaDataFlowers
·
2023-08-13 17:20
双指针算法
c++
开发语言
day7 8-牛客67道剑指offer-JZ74、57、58、73、61、62、64、65、把字符串转换成整数、数组中重复的数字
文章目录1.JZ74和为S的连续正数序列暴力解法滑动窗口(
双指针
)2.JZ57和为S的两个数字3.JZ58左旋转字符串4.JZ73翻转单词序列5.JZ61扑克牌顺子6.JZ62孩子们的游戏(圆圈中最后剩下的数
虚假自律就会真自律!
·
2023-08-13 16:58
牛客剑指offer
算法
c++
数据结构
Array题型:
双指针
Two Pointers套路
一、反向通用步骤:Initializetwopointeri=0,j=array.length-1whilei<=j:Decidewhatyoushoulddobasedonthevalueofarray[i]andarray[j]Moveatleastonepointerforwardinitsdirection二、同向通用步骤:Initializetwopointersiandj,usuall
daitu3201
·
2023-08-13 13:49
数据结构和算法
算法
【算法】排序+
双指针
——leetcode三数之和、四数之和
三数之和(1)排序+
双指针
算法思路:和之前的两数之和类似,我们对暴力枚举进行了一些优化,利用了排序+
双指针
的思路: 我们先排序,然后固定⼀个数a,接着我们就可以在这个数后面的区间内,使用之前两数之和使用的算法
鳄鱼麻薯球
·
2023-08-13 07:35
算法
算法
上一页
73
74
75
76
77
78
79
80
下一页
按字母分类:
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
其他