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
双指针_滑动窗口
【算法】基础算法001之
双指针
:《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C++》《Linux》《算法》每一个不曾起舞的日子,都是对生命的辜负目录前言1.数组分块(数组划分)移动零复写零2.快慢
双指针
樊梓慕
·
2024-01-14 20:00
算法
算法
关于原地 删除数组中的元素(算法题)
有很多方法,是使用
双指针
,快慢指针,(数组中下标等同于指针效果)。但是难免的都发生了元素移动。所以这里的感觉这个说法有点多余。
en595
·
2024-01-14 19:25
算法
《剑指 Offer》专项突破版 - 面试题 9 : 乘积小于 k 的子数组(相向
双指针
C++ 实现)
题目链接:LCR009.乘积小于K的子数组-力扣(LeetCode)题目:输入一个由正整数组成的数组和一个正整数k,请问数组中有多少个数字乘积小于k的连续子数组?例如,输入数组[10,5,2,6],k的值为100,有8个子数组的所有数字的乘积小于100,它们分别是[10]、[5]、[2]、[6]、[10,5]、[5,2]、[2,6]、[5,2,6]。分析:代码实现:classSolution{pu
melonyzzZ
·
2024-01-14 19:20
数据结构
算法
leetcode
数据结构
c++
2024.1.14力扣每日一题——删除排序链表中的重复元素
2024.1.14题目来源我的题解方法一
双指针
(快慢指针)题目来源力扣每日一题;题序:83我的题解方法一
双指针
(快慢指针)因为题目中的链表已经是升序排列,因此使用两个指针,分别指向重复元素的开始和找到第一个不相同元素的的位置
菜菜的小彭
·
2024-01-14 16:16
java
力扣每日一题
leetcode
链表
算法
java
20240112-确定字符串的两半是否相似
思路
双指针
,两个map解决。时间复杂度O(n)。不需要用到map,因为只需要统计元音字母的总数量,不需要区分
fuxxu
·
2024-01-14 15:15
算法
leetcode
数据结构
最小覆盖子串
funcminWindow(sstring,tstring)string{//保存
滑动窗口
字符集win:=make(map[byte]int)//保存需要的字符集need:=make(map[byte]
杨杰_18b7
·
2024-01-14 13:34
C语言实现快排核心思想(
双指针
法)
核心代码:这就是每一趟快排的实现代码,由上面的动图,我们能知道前后指针法的核心是玩好cur和prev这两个指针,具体的逻辑是cur找比key小的值,找到就prev++,然后prev和cur的值就进行交换,但是总不能自己跟自己交换吧,这就是多此一举了,所以我们在代码中的if语句里多加一个判断,++prev不能等于cur;如果cur遇到比key大的值prev就不动,cur++。最后我们再把prev跟k
板鸭〈小号〉
·
2024-01-14 13:07
c语言
开发语言
每日一算法(无重复字符的最长子串)
文章目录一、
滑动窗口
Map解法二、
滑动窗口
HashSet解法提示:以下是本篇文章正文内容,下面案例可供参考给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。
飘风凌雪
·
2024-01-14 12:53
算法练习
算法
java
开发语言
spring
后端
spring
boot
每日一算法(两数之和)
文章目录两数之和哈希解法
双指针
两数之和给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。
飘风凌雪
·
2024-01-14 12:52
算法练习
算法
数据结构
排序算法
java
后端
代码随想录算法训练营第二天| 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II。
文档讲解:
双指针
(左右指针),
滑动窗口
977.有序数组的平方添加链接描述平方后,数组由两端向中间递减,所以用
双指针
从两端开始比较得到从大到小的序列
双指针
:左闭右闭//
双指针
:左闭右闭classSolution
heitong_fu
·
2024-01-14 12:11
代码随想录算法训练营每日笔记
算法
c++
代码随想录算法训练营第三天| 203.移除链表元素 、707.设计链表 、 206.反转链表
文档讲解:
双指针
(左右指针),
滑动窗口
203.移除链表元素代码随想录题目要移除链表元素,需要
双指针
,now指针指向要移除链表元素,next指针指向要移除链表元素的下一个元素。
heitong_fu
·
2024-01-14 12:11
算法
链表
数据结构
代码随想录算法训练营第五天天| 总结数组专题
数组:二分查找、
双指针
(包括快慢指针)、
滑动窗口
、模拟链表:
双指针
、三指针、虚拟头指针、复杂指针操作画图明确每一步(标好次序)数组代码随想录总结的很好,如下图。
heitong_fu
·
2024-01-14 12:37
算法
力扣双周赛第三题----2857. 统计距离为 k 的点对
这题我们的暴力做法就是o(n^2),但是根据数据量这样会超时,所以我们不能用暴力解法去解决那么想一想
双指针
可以吗,不可以。为什么呢?因为他没有一个特性可以让他
双指针
跳过前面或者后面一个点。
乖的小肥羊
·
2024-01-14 10:53
leetcode
算法
职场和发展
乘积最大子数组 暴力
滑动窗口
改进 动态规划
给你一个整数数组nums,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。示例1:输入:[2,3,-2,4]输出:6解释:子数组[2,3]有最大乘积6。示例2:输入:[-2,0,-1]输出:0解释:结果不能为2,因为[-2,-1]不是子数组。#defineMAX(a,b)((a)>(b)?(a):(b))#defineMIN(a,b)((a)max)m
崔凯จุ๊บ
·
2024-01-14 09:00
leetcode
leetcode
动态规划
算法
指针
Leetcode with Golang
滑动窗口
Part1
滑动窗口
的定义:
滑动窗口
这一个技巧主要运用于处理数组问题上,一般用于“子串”问题。精髓是,维护一个里面装着元素的“窗口”,在将新元素装进“窗口”的同时,根据题意,把不符合题意的元素踢出“窗口”。
Kyookk
·
2024-01-14 09:27
Golang
leetcode
算法
第 3 场 小白入门赛(1~6) + 第 3 场 强者挑战赛 (1 ~ 5)
第3场小白入门赛1、厉不厉害你坤哥(暴力)2、思维3、暴力,前缀和,贪心4、二分5、DP6、容斥,
双指针
第3场强者挑战赛2、BFS5、树上倍增求第k祖先1.召唤神坤题意:可以发现,如果我们钦定练习生,那么舞力值的
今天补题了么
·
2024-01-14 08:29
算法
数据结构
c++
蓝桥杯
day18【LeetCode力扣】19.删除链表的倒数第N个结点
],n=2输出:[1,2,3,5]示例2:输入:head=[1],n=1输出:[]示例3:输入:head=[1,2],n=1输出:[1]2.题解看完题述后,链表只能从前往后查找,根据这个特点,想到使用
双指针
算法
Gcanfly
·
2024-01-14 07:47
leetcode
链表
算法
滑动窗口
算法
使用场景最大连续元素和题目:给定n个整数,找出平均数最大且长度为k的连续子数组,并输出该最大平均数。示例:输入:[1,12,-5,-6,50,3],k=4输出:12.75解释:最大平均数(12-5-6+50)/4=51/4=12.75代码:funcfindMaxAverage(nums[]int,kint)float64{sum:=0fori:=0;i=b{returna}returnb}
CV侠
·
2024-01-14 07:40
day16【LeetCode力扣】206.反转链表
示例1:输入:head=[1,2,3,4,5]输出:[5,4,3,2,1]示例2:输入:head=[1,2]输出:[2,1]示例3:输入:head=[]输出:[]2.题解
双指针
c++/***Definitionforsingly-linkedlist
Gcanfly
·
2024-01-14 07:16
leetcode
链表
算法
每日OJ题_算法_
滑动窗口
④_力扣1658. 将x减到0的最小操作数
目录力扣1658.将x减到0的最小操作数解析及代码力扣1658.将x减到0的最小操作数1658.将x减到0的最小操作数-力扣(LeetCode)难度中等给你一个整数数组nums和一个整数x。每一次操作时,你应当移除数组nums最左边或最右边的元素,然后从x中减去该元素的值。请注意,需要修改数组以供接下来的操作使用。如果可以将x恰好减到0,返回最小操作数;否则,返回-1。示例1:输入:nums=[1
GR鲸鱼不跑步
·
2024-01-14 06:21
每日OJ题
算法
leetcode
c++
滑动窗口
双指针
数据结构
【Leetcode】239.
滑动窗口
最大值(Hard)
一、题目1、题目描述给你一个整数数组nums,有一个大小为k的
滑动窗口
从数组的最左侧移动到数组的最右侧。你只可以看到在
滑动窗口
内的k个数字。
滑动窗口
每次只向右移动一位。返回
滑动窗口
中的最大值。
明朗晨光
·
2024-01-14 05:34
Leetcode高频面试题目
leetcode
双端队列
LeetCode+ 56 - 60
合并区间
双指针
算法、位运算、离散化、区间合并_小雪菜本菜的博客-CSDN博客classSolution{public:vector>merge(vector>&a){vector>res;if(a.empty
qiuqiuyaq
·
2024-01-14 04:56
LeetCode+
leetcode
算法
职场和发展
代码随想录算法训练营 | 第二天 977.有序数组的平方、209.长度最小的子数组、59.螺旋矩阵II
长度最小的子数组、59.螺旋矩阵II文章目录代码随想录算法训练营第二天|977.有序数组的平方、209.长度最小的子数组、59.螺旋矩阵II1LeetCode977.有序数组的平方1.1快排方法(408思路)1.2
双指针
法实现
-北天-
·
2024-01-13 23:07
代码随想录算法训练营
算法
排序算法
python
代码随想录算法训练营第一天 | 704. 二分查找、27. 移除元素
Python1.2面试问题针对C++2LeetCode704.二分查找2.1二分查找的实现2.2Python实现版本2.3C++实现版本2.4ACM模式代码(包含输入和输出代码)3LeetCode27.移除元素3.1
双指针
法的实
-北天-
·
2024-01-13 23:07
代码随想录算法训练营
算法
python
c++
代码随想录算法训练营第21天|530.二叉搜索树的最小绝对差 501.二叉搜索树中的众数 236. 二叉树的最近公共祖先
方法二:在中序遍历过程中直接利用
双指针
算出最小绝对差。
gsy-will
·
2024-01-13 22:26
算法
c++
数据结构
TCP如何保证可靠传输?三次握手过程?
(2)其次,TCP采用了连续ARQ协议(回退N,Go-back-N;超时自动重传)(自动重传请求(AutomaticRepeat-reQuest,ARQ))来保证数据传输的正确性,使用
滑动窗口
协议来保证接方能够及时处理所接收到的数据
「已注销」
·
2024-01-13 19:18
算法训练day12Leetcode239
滑动窗口
最大值347前k个高频元素
%E5%89%8DK%E4%B8%AA%E9%AB%98%E9%A2%91%E5%85%83%E7%B4%A0.html#%E6%80%9D%E8%B7%AF239
滑动窗口
最大值题目描述给你一个整数数组
dc爱傲雪和技术
·
2024-01-13 18:16
算法
01-目标检测笔记
滑动窗口
。通过逐像素遍历,得到大量候选框,将每个框送入到分类网络分类后都会有
豆浆油条花生瓜子
·
2024-01-13 17:00
DataWhale组队学习
目标检测
代码随想录Day 9 | KMP 字符串+
双指针
回顾
代码随想录Day9|KMP字符串+
双指针
回顾KMP算法找出字符串中第一个匹配项的下标重复的子字符串KMP字符串
双指针
KMP算法next数组代码模板voidSetNext(vector&next,strings
sRiddle
·
2024-01-13 14:42
算法
【C++速刷精品】
滑动窗口
【C++速刷精品】
滑动窗口
一、长度最小的子数组1、题目链接2、题目解析3、代码二、无重复字符的最长字串1、题目链接2、题目解析3、代码三、最大连续1的个数III1、题目链接2、题目解析3、代码四、将x减到
CS semi
·
2024-01-13 14:39
C++刷题
c++
开发语言
哈希算法
代码随想录算法训练营29期Day13|LeetCode 239,347
文档讲解:
滑动窗口
最大值前k个高频元素栈与队列总结239.
滑动窗口
最大值题目链接:https://leetcode.cn/problems/sliding-window-maximum/submissions
tlingyuqi
·
2024-01-13 13:19
算法
leetcode
职场和发展
c++
leetcode面试top(7排序、二分检索、
滑动窗口
)
排序假设(不是一般性),某一对整数a和b,我们的比较结果是a应该在b前面,这意味着,其中表示连接。如果排序结果是错的,说明存在一个c,b在c前面且c在a的前面。这产生了矛盾,因为和意味着。换言之,我们的自定义比较方法保证了传递性,所以这样子排序是对的。179.最大数给定一组非负整数nums,重新排列它们每位数字的顺序使之组成一个最大的整数。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整
dingtom
·
2024-01-13 13:15
串联所有单词的子串 |
滑动窗口
+ 哈希表】
算法题算法刷题专栏|面试必备算法|面试高频算法越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨作者简介:硕风和炜,CSDN-Java领域新星创作者,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享恭喜你发现一枚宝藏博主,赶快收入囊中吧人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?算法题目录题目链接⛲题目描述求解思路
硕风和炜
·
2024-01-13 13:12
LeetCode每日一题打卡
面试必须掌握的101题
leetcode
散列表
算法
java
面试
滑动窗口
hashmap
精确掌控并发:分布式环境下并发流量控制的设计与实现(一)
本篇主要讲清楚常用的并发流量控制方案,包括固定窗口、
滑动窗口
、漏桶、令牌桶、分布式消息中间件等,以及各种方案在支付系统不同场景下的应用。在非支付场景,也常常需要用到这些并发流量控制方案。
隐墨_SC
·
2024-01-13 12:23
百图解码支付系统设计与实现
分布式
系统架构
架构
后端
金融
【FINN-R】论文笔记-3.2layers
AnEnd-to-EndDeep-LearningFrameworkforFastExplorationofQuantizedNeuralNetworks的3.2小节笔记,主要阅读目的是了解PE和SIMD的概念、神经网络各层的结构、P和Q参数的定义3.2层构成典型卷积层的主要元素是矩阵矢量阈值单元(MVU)和
滑动窗口
单元
Leonie_
·
2024-01-13 10:15
PYNQ
FPGA
神经网络
fpga
【
双指针
】三数之和
15.三数之和给你一个整数数组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]
nottky
·
2024-01-13 10:49
教你几招算法笔试的套路
相关推荐:一文秒杀四道原地修改数组的算法题
双指针
技巧总结-----------我知道各位是被标题吸引进来的,那就不废话,先说几个算法笔试的硬核套路,再说说做题复习的策略。
labuladong
·
2024-01-13 09:53
精确掌控并发:分布式环境下并发流量控制的设计与实现(二)
3.固定窗口参考:精确掌控并发:分布式环境下并发流量控制的设计与实现(一)-CSDN博客4.
滑动窗口
滑动窗口
算法是一种更为灵活的流量控制方案,它比固定窗口算法能更平滑地处理突发流量。
隐墨_SC
·
2024-01-13 08:28
百图解码支付系统设计与实现
分布式
系统架构
限流
流量控制
高并发
Leetcode2981. 找出出现至少三次的最长特殊子字符串 I
EverydayaLeetcode题目来源:2981.找出出现至少三次的最长特殊子字符串I解法1:
滑动窗口
+暴力枚举
滑动窗口
枚举窗口内字符相同的字符串,再暴力枚举长度相等的字符串。
UestcXiye
·
2024-01-13 08:41
Every
day
a
LeetCode
C++
leetcode
数据结构与算法
字符串
两两交换链表中的节点(图解递归和
双指针
)
24.两两交换链表中的节点题目描述:给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。示例1:输入:head=[1,2,3,4]输出:[2,1,4,3]示例2:输入:head=[]输出:[]示例3:输入:head=[1]输出:[1]提示:链表中节点的数目在范围[0,100]内0*时间复杂度:O(n)**空间复杂度:O
沉梦听雨.
·
2024-01-13 05:27
计算机基础
leetcode
链表
算法
双指针
之 快乐数
目录题目出处202.快乐数-力扣(LeetCode)思路:根据题意,不管是否为快乐数,最终都会进入循环,所以可使用快慢指针的思想来解决此题代码:补充:最后都会进入循环的原因,使用鸽巢原理证明题目出处202.快乐数-力扣(LeetCode)思路:根据题意,不管是否为快乐数,最终都会进入循环,所以可使用快慢指针的思想来解决此题示例一画图:实例二画图:代码:classSolution{public:in
Hsifles
·
2024-01-13 05:43
算法-双指针
算法
c++
双指针
之 有效三角形的个数
题目出处:611.有效三角形的个数-力扣(LeetCode)思想:利用两条最小的边大于第三条边即为三角形这条定理,利用对撞指针来过滤不合理的操作1:排序操作2:固定最大的那条边,设置变量c操作3:a指向索引0,b指向c前面一个数代码classSolution{public:inttriangleNumber(vector&nums){sort(nums.begin(),nums.end());//
Hsifles
·
2024-01-13 05:11
算法-双指针
算法
c++
代码随想录算法训练营第二天| LeetCode977. 有序数组的平方、209.长度最小的子数组、59.螺旋矩阵II
文章目录LeetCode977.有序数组的平方解法解法一、暴力解法二、
双指针
代码随想录的代码209.长度最小的子数组暴力解法
滑动窗口
59.螺旋矩阵II难点分析模拟法解题LeetCode977.有序数组的平方解法这道题有两道解法
小雨凉如水
·
2024-01-13 03:05
算法
矩阵
线性代数
代码随想录
数组
算法:删除字符串中的所有相邻重复项
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档目录一、问题描述二、栈解法三、
双指针
解法总结提示:以下是本篇文章正文内容,下面案例可供参考一、问题描述给出由小写字母组成的字符串str,重复项删除操作会选择两个相邻且相同的字母
计科6班
·
2024-01-13 02:32
算法
双指针
问题——求只包含两个元素的最长连续子序列(子数组)
一,题目描述你正在探访一家农场,农场从左到右种植了一排果树。这些树用一个整数数组fruits表示,其中fruits[i]是第i棵树上的水果种类。你想要尽可能多地收集水果。然而,农场的主人设定了一些严格的规矩,你必须按照要求采摘水果:你只有两个篮子,并且每个篮子只能装单一类型的水果。每个篮子能够装的水果总量没有限制。你可以选择任意一棵树开始采摘,你必须从每棵树(包括开始采摘的树)上恰好摘一个水果。采
Niu_brave
·
2024-01-13 02:26
双指针算法
算法
学习
学习笔记
c++
leetcode
滑动窗口
双指针
双指针
算法(普通
双指针
、对撞指针、快慢指针、
滑动窗口
)万字
双指针
基本思想引入算法题初步识别思路⭐⭐⭐算法题移动零复写零快乐数盛最多水的容器有效三角形的个数查找总价格为目标值的两个商品三数之和
滑动窗口
长度最小的子数组无重复字符的最长子串将x减到0的最小操作数基本思想
川入
·
2024-01-13 01:49
算法专栏
算法
双指针
滑动窗口
快慢指针
对撞指针
普通双指针
二分查找和删除元素【
双指针
】
classSolution{public:intsearch(vector&nums,inttarget){intleft=0;intright=nums.size()-1;while(leftnums[mid])left=mid+1;elseif(target&nums,intval){intleft=0;intright=0;for(;left
一只特立独行的猪( ﹡ˆoˆ﹡
·
2024-01-13 01:44
算法
leetcode
数据结构
有序数组的平方|大于某一个数的最短数组|螺旋矩阵【
双指针
的的应用】
classSolution{public:vectorsortedSquares(vector&nums){intn=nums.size();intindex=n-1;vectorresult(n);intright=0;intleft=0;for(left=0,right=n-1;left=nums[right]){result[index--]=nums[left]*nums[left];le
一只特立独行的猪( ﹡ˆoˆ﹡
·
2024-01-13 01:44
算法
leetcode
数据结构
【代码随想录02】977.有序数组的平方 209.长度最小的子数组 59.螺旋矩阵II
因此可以采用
双指针
法,在数组首尾各放置一个指针,比较指针元素平方后的值。较大者放入结果数组末端,同时该指针向中间移动,继续比较。
星云code
·
2024-01-12 22:27
代码随想录
矩阵
算法
数据结构
一篇文章带你学会
滑动窗口
算法
框架Mapwindow=newHashMapneed,window;for(charc:t)need[c]++;然后,使用left和right变量初始化窗口的两端,不要忘了,区间[left,right)是左闭右开的,所以初始情况下窗口没有包含任何元素:intleft=0,right=0;intvalid=0;while(rightneed=newHashMapwindow=newHashMapne
Sloent
·
2024-01-12 22:46
算法
算法
上一页
16
17
18
19
20
21
22
23
下一页
按字母分类:
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
其他