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
#双指针
算法基础1.3:
双指针
,位运算,离散化,区间合并
双指针
for(inti=0,j=0;iusingnamespacestd;constintN=100010;intn;intq[N],s[N];//s存的是当前j到i这个区间里面每一个数出现的次数。
sunluyang521
·
2025-02-17 14:50
算法基础
算法
常见解题方法(位运算、
双指针
、前缀和)
目录位运算
双指针
前缀和对于自己刷题过程中遇到的一些常见简单解题方法进行了一个总结:数组在数据结构中是线性表的一种,在算法题中常常以整数数组和字符串等形式展现,其实数组中包含有更多的数据类型,这一段主要说明整数数组的一些常见问题解法
wibkb
·
2025-02-17 13:49
java
排序算法
快速排序
【蓝桥杯C/C++】彻底理解
双指针
算法
目录学习目标什么是
双指针
?
不会喷火的小火龙
·
2025-02-17 13:47
#
蓝桥杯
算法与数据结构
算法
数据结构
c++
[Acwing]
双指针
2816. 判断子序列
目录前言思路code:错误的思路前言基础不打牢今朝见鬼神(我是牛马呜呜呜)思路通过i指针循环一遍b数组然后通过j(j=1)遍历a数组当且仅当(jusingnamespacestd;constintN=1e5+10;inta[N],b[N],n,m;voidsolve(){cin>>n>>m;for(inti=1;i>a[i];for(inti=1;i>b[i];intj=1;for(inti=1;
*DDL_GzmBlog
·
2025-02-17 07:24
#
双指针
[AcWing] 算法基础课(一)学算法强推哦
所以一开始学起来不是很容易,慢慢听下去边查边学就好啦)文章目录第一讲基础算法1.排序1.1快速排序1.2归并排序2.二分2.1整数二分(较麻烦)2.2浮点数二分3.前缀和与差分3.1前缀和3.2差分4.
双指针
vo很懒
·
2025-02-17 07:23
算法
算法
leetcode
数据结构
双指针
算法 AcWing 2816. 判断子序列
双指针
算法AcWing2816.判断子序列原题链接AcWing2816.判断子序列算法标签
双指针
思路子序列指序列的一部分项按原有次序排列而得的序列。
飞滕人生TYF
·
2025-02-17 07:52
算法
算法
c++
数据结构
【练习】【
双指针
】力扣热题100 283. 移动零
题目给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。示例1:输入:nums=[0,1,0,3,12]输出:[1,3,12,0,0]示例2:输入:nums=[0]输出:[0]来源:力扣热题100283.移动零思路(注意事项)学习remove()函数的用法纯代码classSolution{public:void
柠石榴
·
2025-02-17 06:21
输入输出
力扣
hot100
leetcode
算法
c++
算法练习|Leetcode49字母异位词分词 ,Leetcode128最长连续序列,Leetcode3无重复字符的最长子串,sql总结
目录一、Leetcode49字母异位词分词题目描述解题思路方法:哈希总结二、Leetcode128最长连续序列题目描述解题思路方法:总结三、Leetcode3无重复字符的最长子串题目描述解题思路方法:
双指针
法总结
ambitious_Rgr
·
2025-02-16 16:05
算法
sql
哈希
哈希算法
数据结构
leetcode
python
今日写题04work
题目:移除链表元素两种实现思路思路一使用
双指针
,prev,cur快慢指针解决。当cur不等于val,两个指针跳过。当等于val时,要考虑两种情况,一种是pos删,一种是头删除。
kukubuzai
·
2025-02-16 09:38
算法
数据结构
c语言
leetcode
【代码随想录训练营第42期 打卡总结 - 刷题记录】
从一开始的数组二分
双指针
,到最后的图论最短路,难度可以说是在不断增加,但也确切感觉到了很大的收获。
逝去的秋风
·
2025-02-15 19:25
代码随想录打卡
总结
牛客网面试必刷TOP101-09
双指针
BM92 最长无重复子数组
描述给定一个长度为n的数组arr,返回arr的最长无重复元素子数组的长度,无重复指的是所有数字都不相同。子数组是连续的,比如[1,3,5,7,9]的子数组有[1,3],[3,5,7]等等,但是[1,3,7]不是子数组数据范围:0≤arr.length≤10^5,0max)max=count;}else{while(arr[left]!=arr[right]){num[arr[left]]=0;co
bingw0114
·
2025-02-15 12:31
面试
算法
职场和发展
算法-数组篇04-长度最小的子字符串
滑动窗口和
双指针
方法类似,给定一个长度l,在数组中依次遍历0到l,1到l+1…,r到r+l。利用这个方法可以求解数组中一些子字符串的问
Buling_0
·
2025-02-15 08:28
算法篇
算法
数据结构
leetcode
双指针
思想
双指针
(TwoPointers)是一种常用的算法思想,通过使用两个指针(通常是下标或迭代器)在数组、链表或字符串中协同工作,高效解决一些问题。
六七_Shmily
·
2025-02-14 20:17
算法题
算法
双指针
leetcode_
双指针
125.验证回文串
125.验证回文串如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个回文串。字母和数字都属于字母数字字符。给你一个字符串s,如果它是回文串,返回true;否则,返回false。法1:re.subre.sub()是Pythonre(正则表达式)模块中的一个函数,用于替换字符串中匹配指定正则表达式的部分基本语法:re.sub(patter
MiyamiKK57
·
2025-02-13 16:17
leetcode
算法
职场和发展
【LeetCode Hot100】盛最多水的容器[特殊字符]
双指针
法,Java实现!图文详解,小白也能秒懂!
[LeetCodeHot100]盛最多水的容器
双指针
法,Java实现!图文详解,小白也能秒懂!
AllowM
·
2025-02-13 11:39
算法hot100
leetcode
java
算法
滑动窗口算法笔记(C++)
滑动窗口算法是一种基于
双指针
技巧的高效算法,常用于解决数组或字符串上的一些特定问题.算法讲解基本概念滑动窗口算法可以想象成在一个数组或字符串上有一个固定大小或者可变大小的窗口,该窗口在数组或字符串上从左到右滑动
程序员阿荣
·
2025-02-13 08:16
算法和数据结构
算法
笔记
c++
四数相加II(Map作哈希表);383.赎金信(数组作哈希表);15.三数之和(
双指针
);18.四数之和(
双指针
)
目录LeetCode454.四数相加1.思路2.代码实现3.复杂度分析4.思考Leetcode383.赎金信1.思路2.代码实现3.复杂度分析4.思考Leetcode15.三数之和方法一:
双指针
法1.思路
努力学习的牛宁西
·
2025-02-13 04:45
代码随想录训练营
算法
散列表
leetcode
LeetCode334递增的三元子序列,贪心+
双指针
目录题目描述:思路代码题目描述:思路很自然能够想到使用两个数值来记录最小值和次小值,并且有一个前提--次小值>最小值,那么我们在后面的遍历过程中只要找到一个值大于次小值,结果返回true,如果遍历整个数组都没有找到,结果返回false.我们假设最小值small,次小值mid但是我们对于最小值和次小值的更新策略是什么呢?比如:small>=nums[i],我们就能够直接更新small呢???关键在这
Shallow_Carl
·
2025-02-12 23:03
蓝桥杯
算法
LeetCode
【leetcode 28】27.移除元素==
双指针
==
题链1.双层for循环i–;//因为下标i以后的数值都向前移动了一位,所以i也向前移动一位len–;//此时数组的大小-1classSolution{publicintremoveElement(int[]nums,intval){//1.两层循环intlen=nums.length;for(inti=0;i
椰椰荔枝糖
·
2025-02-12 08:23
刷题
leetcode
算法
职场和发展
java
python-leetcode 23.回文链表
题目:给定单链表的头节点head,判断该链表是否为回文链表,如果是,返回True,否则,返回False输入:head=[1,2,2,1]输出:true方法一:将值复制到数组中后用
双指针
法有两种常用的列表实现
SylviaW08
·
2025-02-11 08:52
leetcode
链表
算法
LeetCode-移除元素、删除有序数组中的重复项
LeetCode-移除元素、删除有序数组中的重复项移除元素数组暴力for循环
双指针
法
双指针
(快慢指针)
双指针
优化(对撞指针)【快慢指针】26.删除有序数组中的重复项务必清晰理解记忆每个变量、每个函数的定义
Emily_ASL
·
2025-02-11 00:48
python
leetcode
算法
python
力扣hot100-
双指针
283.移动零题目:给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。示例1:输入:nums=[0,1,0,3,12]输出:[1,3,12,0,0]思想:利用快慢指针将特定元素往后移动,不能让0在慢指针的后面即可defmoveZeroes(self,nums:List[int])->None:"""Donot
行走的小鱼儿
·
2025-02-10 06:55
leetcode
算法
数据结构
力扣80:删除排序数组中的重复项 II
一、
双指针
解法思路:由于数组是有序的,我们可以使用
双指针
法来解决这个问题。我们可以定义两个指针slow和fast分别指向处理后的数组的末尾和当前处理的位置。
菠 罗 吹 雪
·
2025-02-10 06:52
leetcode
算法
数据结构
KMP算法详解 + Python源代码(力扣28. 找出字符串中第一个匹配项的下标,力扣459. 重复的子字符串)
力扣28.找出字符串中第一个匹配项的下标思路(两种方法):1.
双指针
循环:(1)首先遍历文本串haystack,直到有一个字符与模式串needle的第一个字符相同,进入深度匹配(2)深度匹配过程中,将文本串后边几个字符
hanyu1209
·
2025-02-10 06:19
算法
python
leetcode
数据结构
c/c++蓝桥杯经典编程题100道(11)回文数判断
回文数判断c/c++蓝桥杯经典编程题100道-目录-CSDN博客目录回文数判断一、题型解释二、例题问题描述三、C语言实现解法1:整数反转比较(难度★)解法2:字符串
双指针
法(难度★★)解法3:仅反转一半数字
tamak
·
2025-02-09 07:29
算法
c语言
c++
蓝桥杯
c/c++蓝桥杯经典编程题100道(6)字符串反转
字符串反转->返回c/c++蓝桥杯经典编程题100道-目录目录字符串反转整理一、题型解释二、例题问题描述C语言实现解法1:
双指针
交换法(难度★)解法2:递归反转(难度★★)解法3:使用临时数组(难度★☆
tamak
·
2025-02-09 07:59
c语言
c++
蓝桥杯
算法
leetcode15-三数之和
leetcode15思路时间复杂度:O(n2)空间复杂度:O(logn)+O(k)本题主要考虑使用
双指针
法解答,遍历i的时候i固定,然后定义两个指针left和right,通过移动left和right来使得总和相加为
记得早睡~
·
2025-02-08 12:44
算法小课堂
数据结构
leetcode
算法
力扣算法题经典(两数之和、排列组合)-python
先排序,用for循环,
双指针
,while。15.三数之和-力扣(LeetCode)最接近的三数之和。与target最接近,同上,if条件不同而已。
渣渣zheng
·
2025-02-08 09:48
leetcode刷题
leetcode
算法
python
【码道初阶】从2000+ms->0ms
双指针
法的最终优化速通Leetcode633
引言本文将对比一种低效超时的
双指针
遍历法和优化过后的
双指针
遍历法,旨在通过对比代码的方式加深对
双指针
方法的理解运用。
月明长歌
·
2025-02-08 06:26
码道初阶
算法
leetcode
c++
数据结构
刷代码随想录14--哈希表
三数之和(1.5h)15.三数之和-力扣(LeetCode)确实,哈希表适合i,j,k可重复,即遍历a[i],找有没有0-a[i]那么,i,j,k不重复怎么办代码随想录给出了
双指针
法,个人感觉移动有一点像快排整个过程挺一言难尽的
2301_76653605
·
2025-02-06 07:14
散列表
数据结构
三.
双指针
/链表/数组模板
00.AcWing
双指针
模板:寻找单调性#jO(n)活动-AcWingdefmain():a=[0]*100010s=[0]*100010n=int(input())a=list(map(int,input
价值成长
·
2025-02-05 20:49
算法
链表
数据结构
【基础算法(五)
双指针
】
最长连续不重复序列#includeusingnamespacestd;constintN=100010;intarr[N],s[N];intmain(){intn;cin>>n;for(inti=0;i>arr[i];intres=0;for(inti=0,j=0;i1){//超过1次,说明有重复s[arr[j]]--;j++;}res=max(res,i-j+1);}coutusingnames
小新的秃头日常
·
2025-02-05 19:11
算法
数据结构
c++
【码道初阶】Leetcode680:验证回文串的
双指针
速解以及提升思维的感想
——
双指针
法的艺术一、问题描述给定一个字符串s,最多允许删除一个字符。请判断该字符串是否能成为回文字符串。若可以,返回true;否则返回false。
月明长歌
·
2025-02-04 20:28
码道初阶
算法
leetcode
c++
数据结构
c语言
hot 100刷题小结 1
找到数组中所有消失的数字位运算题338比特位计算题136只出现一次的数字题461汉明距离二分查找题4寻找两个正序数组的中位数题33搜索旋转排序数组题34在排序数组中查找元素的第一个和最后一个位置题240搜索二维矩阵2
双指针
题
leisure_SU
·
2025-02-04 11:17
算法
双指针
算法深度解析
双指针
算法简介
双指针
是一种常用的算法技巧,它通过使用两个指针在数据结构上进行操作,通常用来优化时间复杂度,解决数组或链表中的一些特定问题。
某个默默无闻奋斗的人
·
2025-02-04 11:13
双指针
算法
java
leetcode
离散化、贪心、
双指针
、二分、倍增、构造、位运算
目录八、离散化1、离散化简介九、贪心1、贪心的概念十、
双指针
1、
双指针
简介2、对撞指针3、快慢指针十一、二分1、二分的概念2、二分的两种模板十二、倍增1、定义十三、构造1、定义十四、位运算1、位运算概述八
那只狸花猫吖
·
2025-02-03 04:05
蓝桥杯
算法
二叉搜索树中的众数(力扣501)
为了方便计数,我们使用
双指针
法,一旦发现当前且节点和前一个节点相同(指的是按照中序遍历的顺序的前一个),则累加该数字的次数。将出现次数最多的数字放入结果数组中。但是如何找到出现次数最多的呢?
qy发大财
·
2025-02-03 03:00
leetcode
算法
数据结构
验证二叉搜索树(力扣98)
双指针
法和适合解决这个问题,一个指针指向当前节点,另一个指针指向前一个节点(指的是按照中序遍历顺序的前一个节点),不断后移两个指针,两两进行比较。这只是大致思路,大家可以结合我的代码以及注释加以理解。
qy发大财
·
2025-02-03 03:28
leetcode
算法
职场和发展
数据结构
hot100刷题第1-9题,三个专题哈希,
双指针
,滑动窗口
求满足条件的子数组,一般是前缀和、滑动窗口,经常结合哈希表;区间操作元素,一般是前缀和、差分数组数组有序,更大概率会用到二分搜索目前已经掌握一些基本套路,重零刷起leetcodehot100,套路题按套路来,非套路题适当参考gpt解法。一、梦开始的地方,两数之和classSolution:#注意要返回的是数组下标deftwoSum(self,nums:List[int],target:int)->
小泽爱刷题
·
2025-02-02 20:32
LeetCode
Hot100
刷题题解
python3
哈希算法
算法
python算法和数据结构刷题[3]:哈希表、滑动窗口、
双指针
、回溯算法、贪心算法
回溯算法「所有可能的结果」,而不是「结果的个数」,一般情况下,我们就知道需要暴力搜索所有的可行解了,可以用「回溯法」。回溯算法关键在于:不合适就退回上一步。在回溯算法中,递归用于深入到所有可能的分支,而迭代(通常在递归函数内部的循环中体现)用于探索当前层级的所有可能选项。组合问题39.组合总和-力扣(LeetCode)给你一个无重复元素的整数数组candidates和一个目标整数target,找出
励志成为美貌才华为一体的女子
·
2025-02-02 19:29
数据结构与算法
算法
数据结构
散列表
LeetCode每日刷题:两个数组的交集
可以不考虑输出结果的顺序解题思路:
双指针
+排序:先将数组利用sort方法进行排序,然后分别定义下标index1和index2分别遍历数组1和数组2,与此同时建立一个新数组(数组长度为两个数组之间较短的那一个数组长度
一般般的每日刷题
·
2025-02-01 22:32
leetcode
算法
利用
双指针
一次遍历实现”找到“并”删除“单链表倒数第K个节点(力扣题目为例)
Problem:19.删除链表的倒数第N个结点文章目录题目描述思路复杂度Code题目描述思路1.欲找到倒数第k个节点,即是找到正数的第n-k+1、其中n为单链表中节点的个数个节点。2.为实现只遍历一次单链表,我们先可以使一个指针p1指向链表头部再让其先走k步,此时再让一个指针p2指向单链表的头部接着使其同p1一起往后走,当p1指向单链表的尾部空指针时(即p1=null)时停止,此时p2指向的即为正
LNsupermali
·
2025-01-31 04:06
力扣题目
leetcode
算法
职场和发展
LeetCode 16. 排列序列
遍历固定一个元素:遍历数组中的每个元素作为三个数中的第一个数,固定该元素后,使用
双指针
在剩余的子数组中寻找另外两个数。
努力的小诚
·
2025-01-29 21:33
《LeetCode算法全集》
数据结构
算法
双指针
华为OD机试 - 有效子字符串 -
双指针
(Python/JS/C/C++ 2024 D卷 100分)
一、题目描述输入两个字符串S和L,都只包含小写字母,len(S)<=100,len(L)<=500000。判断S是否是L的有效子字符串。判定规则:S中的每个字符在L中都能找到(可以不连续),且S在L中字符的前后顺序与S中顺序要保持一致。例如:S="ace"是L="abcde"的一个子序列,且有效字符是a、c、e,而"aec"不是有效子序列,且有效字符只有a、e(因为相对位置不同)。二、输入描述输入
哪 吒
·
2025-01-29 12:11
华为od
python
javascript
华为OD机试(D卷+C卷+A卷+B卷)2024真题目录(全、新、准)
一、逻辑分析二、数据结构1、线性表①数组②
双指针
2、map与list3、队列4、链表5、栈6、滑动窗口7、二叉树8、并查集9、矩阵三、算法1、基础算法①贪心思维②二分查找③分治递归④回溯⑤全排列递归⑥排序算法
哪 吒
·
2025-01-29 12:10
搬砖工逆袭Java架构师
华为od
A卷
B卷
C卷
D卷
相向
双指针
拿O(1)的时间获取O(n)的信息,进而将时间复杂度减低相应的题目两数之和三数之和四数之和这里都运用双向指针来降低时间复杂度,难度依次上升。最终都化为了两数之和的问题解题难点记录对于重复元素的处理外层元素如果重复,直接跳过(判断条件要判断是否为第一个元素,避免越界)双向指针部分(利用下面这段代码,来跳过重复元素)for(pre++;nums[pre]==nums[pre-1];pre++);语法学
memorycx
·
2025-01-29 09:11
算法
02数组+字符串+滑动窗口+前缀和与差分+
双指针
(D5_
双指针
)
目录一、基本介绍二、算法思想三、算法模型1.对撞指针2.快慢指针3.滑动窗口一、基本介绍
双指针
是一种应用很广泛且基础的算法,严格来说
双指针
不是算法更像是一种思想。
Java丨成神之路
·
2025-01-29 03:41
06数据结构与算法
java
前端力扣刷题 | 5:hot100之 普通数组
法一:
双指针
初始化:res用来存储当前的最大和,初始值为负无穷大。left是子数组的左边界,但它并不在实际计算中起作用,因
酒酿泡芙1217
·
2025-01-28 21:56
力扣hot100
leetcode
前端
算法
【代码随想录:数组】python3
数组Day1704.二分查找,27.移除元素704二分查找35搜索插入位置34在排序数组中查找元素的第一个和最后一个位置27移除元素:
双指针
977.有序数组的平方209.长度最小的子数组:最小滑窗904
zzzmy159
·
2025-01-28 06:35
代码随想录
leetcode
LEETCODE#448找到数组中消失的数
1.排序后
双指针
vectorfindDisappearedNumbers(vector&nums){intnum1=nums.size();sort(nums.begin(),nums.end());nums.erase
Azanulbizar
·
2025-01-27 09:37
LEETCODE
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他