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.
双指针
算法介绍
双指针
指的是在遍历对象的过程中,不是普通的使用单个指针进行访问,而是使用两个相同方向或者相反方向的指针进行扫描,从而达到相应的目的。
虚心求知的熊
·
2023-11-29 15:26
算法与数据结构
算法
数据结构
链表
算法——
双指针
算法
双指针
算法
双指针
算法是指一切采用
双指针
的方式,降低原本暴力解法的时间复杂度的算法,通常
双指针
算法可以将暴力的O(n^2)降低到O(n)由于
双指针
算法指的是一类算法,下面我用两道题来简单解释一下单词个数问题即查找一段字符串中
scfor333
·
2023-11-29 15:55
李明徽的算法
算法
字符串
指针
算法思想之
双指针
1、什么是
双指针
严格的来说,
双指针
只能说是是算法中的一种技巧。
双指针
主要用于遍历数组,两个指针指向不同的元素,从而协同完成任务。
_Tough_Girl
·
2023-11-29 15:54
算法
算法
算法—
双指针
双指针
算法可以帮忙把时间复杂度降低一个维度,即原本O(n2)降为O(n);将O(n)降为O(1)移动零移动零题目解析将所有0移动到末尾保持非0元素相对顺序对数组进行原地操作(不开辟额外空间)算法原理数组划分
裙下的霸气
·
2023-11-29 15:53
算法
算法
每日OJ题_算法_
双指针
⑧力扣18. 四数之和
[a],nums[b],nums[c],nums[d]](若两个四元组元素一一对应,则认为两个四元组重复):0>fourSum(vector&nums,inttarget){}};解析代码解法(排序+
双指针
GR_C
·
2023-11-29 09:35
每日OJ题
算法
leetcode
数据结构
c++
双指针
每日博客Day8
算法思路(
双指针
):定义cur指针指向头结点,定义pre指针指向null(定义节点)开始移动:先保存cur->next的节点为temp,不然后面不会丢失
我爱温州
·
2023-11-29 04:23
代码随想录训练营
c++
笔记
剑指offer_21 删除链表的倒数第n个结点
示例2:输入:head=[1],n=1输出:[]示例3:输入:head=[1,2],n=1输出:[1]提示:链表中结点的数目为sz1<=sz<=300<=Node.val<=1001<=n<=sz代码:
双指针
小黄花er
·
2023-11-29 03:50
LeetCode
链表
数据结构
算法
力扣 剑指 Offer 22. 链表中倒数第k个节点(简单)
示例:给定一个链表:1->2->3->4->5,和k=2.返回链表4->5.题解方法一:
双指针
法/***Definitionforsingly-linkedlis
向上的毛毛
·
2023-11-29 03:19
链表
java
数据结构
剑指 Offer II 021. 删除链表的倒数第 n 个结点
删除链表的倒数第n个结点一、题目信息一、题目信息解题思路:
双指针
,一个left,一个right。
见闻色霸气~
·
2023-11-29 03:13
剑指Offer好题精选
链表
面试
删除链表的倒数第N个节点,剑指offerII(21),力扣
目录题目地址:题目:相似类型题:我们直接看本题题解吧:解题方法:难度分析:解题分析:解题思路(
双指针
):代码实现:代码说明:代码实现(计算链表长度):代码实现(栈):题目地址:19.删除链表的倒数第N个结点
大数据SQLboy
·
2023-11-29 03:06
剑指offer
#
链表
leetcode
链表
算法
【代码随想录-刷题学习JavaScript】day4-字符串
541.反转字符串II三、剑指Offer05.替换空格四、151.翻转字符串里的单词五、剑指Offer58-II.左旋转字符串六、28.实现strStr()七、459.重复的子字符串八、字符串总结九、
双指针
回顾一
倏存
·
2023-11-29 03:18
学习
javascript
算法
【
双指针
】四数之和
四数之和建议做过了解三数之和的思想再做这道题,思路是一样的~题目描述18.四数之和-力扣(LeetCode)给你一个由n个整数组成的数组nums,和一个目标值target。请你找出并返回满足下述全部条件且不重复的四元组[nums[a],nums[b],nums[c],nums[d]](若两个四元组元素一一对应,则认为两个四元组重复):0>fourSum(int[]nums,inttarget){/
日夜无休时
·
2023-11-29 02:49
优选算法刷题
数据结构
【
双指针
】三数之和
三数之和在做这道题之前,建议建议先将两数之和做完再做,提升更大~文章目录三数之和题目描述算法原理解法一解法二思路如下:处理细节问题:代码编写Java代码编写C++代码编写15.三数之和-力扣(LeetCode)题目描述给你一个整数数组nums,判断是否存在三元组[nums[i],nums[j],nums[k]]满足i!=j、i!=k且j!=k,同时还满足nums[i]+nums[j]+nums[k
日夜无休时
·
2023-11-29 02:46
优选算法刷题
c++
算法
数据结构
leetcode
2021/02/03 每日一题 滑动窗口中位数
我掐指一算,这个月估计是
双指针
滑动窗口月了,到月底我就会做滑动窗口的题了LeetCode上滑动窗口中位数,困难难度,记录下解题思路传入一个数组,以及窗口大小k,题意的中位数是窗口内的数是有序排列的有序排列
Taec0123
·
2023-11-28 21:49
LeetCode Hot100 42.接雨水
方法一(相向
双指针
):竖着计算面积代码:classSolution{publicinttrap(int[]height){intans=0,left=0,right=height.length-1,preMax
hn小菜鸡
·
2023-11-28 21:24
算法刷题-双指针
算法刷题-栈
leetcode
算法
职场和发展
力扣:61. 旋转链表
1、简单做法(勉强算
双指针
吧)/***Definitionforsingly-linkedlist.
宋轻云
·
2023-11-28 16:43
力扣个人刷题题解
leetcode
算法
c++
莫队
\sqrt{n}nn的时间内离线求解一段区间内不同数字的个数实现暴力做法:用一个桶记录每种颜色出现的数量随后扫描桶,进行统计显然会超时我们对询问进行排序,以便利用前一个询问的信息更新下一个询问我们建立
双指针
某typedef
·
2023-11-28 16:12
笔记
题解
数据结构
力扣61-旋转链表-C++
双指针
法
一、运行结果二、题目给你一个链表的头节点head,旋转链表,将链表每个节点向右移动k个位置。示例1:输入:head=[1,2,3,4,5],k=2输出:[4,5,1,2,3]示例2:输入:head=[0,1,2],k=4输出:[2,0,1]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/rotate-list三、思路注意,移动的次数k有可能大于
TLJava^v^
·
2023-11-28 16:33
#
力扣-C++
链表
leetcode
c++
数据结构
算法
【算法萌新闯力扣】:旋转链表
题目链接:61.旋转链表题目描述 代码思路 先用
双指针
策略找到倒数K的位置,也就是{1,2,3}和{4,5}两个序列,之后再将两个链表拼接成{4,5,1,2,3}就行了。
孤舟一叶~
·
2023-11-28 16:27
Java算法
算法
leetcode
链表
java
数据结构
力扣题解:面试题 02.06. 回文链表
解题思路本题要判断一个链表是否回文的可以从中间向两边,依次判断是否相同可以从两边向中间,依次判断是否相同本题提供一个单向链表,只能向一个方向移动,所以需要构建一种能够同时向两个方向移动的结构方法1:
双指针
胡矣
·
2023-11-28 07:25
算法
LeetCode
算法
leetcode题解
力扣题解
回文链表
算法刷题打卡第60天:回文链表
示例1:输入:head=[1,2,3,3,2,1]输出:true示例2:输入:head=[1,2]输出:false解法一、将值复制到数组中后用
双指针
法思路:一共为两个步骤:复制链表值到数组列表中。
夏秃然
·
2023-11-28 07:55
躺平合集
链表
算法
数据结构
[力扣题解]:234. 回文链表
解题思路寻找回文串要从中间向两侧延伸,判断回文串则要从两端向中间遍历1.
双指针
判断回文字符串字符串为数组型顺序存储,可快速索引到字符串两端,故采用
双指针
defisPalindrome(s):left=0right
黑黑的脚后跟
·
2023-11-28 07:22
数据结构与算法
力扣题解
算法
链表
Java LeetCode篇-深入了解关于数组的经典解法
轮转数组1.1使用移位的方式1.2使用三次数组逆转法2.0消失的数字2.1使用相减法2.2使用异或的方式3.0合并两个有序数组3.1使用三指针方式3.2使用合并排序方式4.0删除有序数组中的重复项4.1使用
双指针
方式
小扳
·
2023-11-28 05:21
leetcode
算法
职场和发展
java
数据结构
力扣每日一题----求第n位斐波那契数
斐波那契数题目解析方法一暴力递归求解方法二暴力递归的优化方法三
双指针
思想代码解析1.暴力递归2.去重递归3.
双指针
求解题目解析方法一暴力递归求解这种方法其实就是使用递归的思想来求解,将每个数看成是一颗二叉树的节点
从现在开始壹并超
·
2023-11-28 05:10
java
指针
算法
leetcode
双指针
算法
文章目录思路简介代码模版使用时机时间复杂度例题CODE思路解析思路简介大致有两种情况对于两个序列,我们需要对里面的某些值进行操作更多的时候是对一个序列来说,我们需要对前后两个值进行操作这些时候,我们就需要用两个指针去寻找满足条件的两个值代码模版for(inti=0,j=0;i#include#includeusingnamespacestd;constintN=1e5+10;inta[N],s[N
2301_78981471
·
2023-11-28 01:37
算法学习记录
算法
c++
笔记
2824. 统计和小于目标的下标对数目 : 详解 “左找右“ & “右找左“ 两种方式
Tag:「排序」、「二分」、「
双指针
」给你一个下标从0开始长度为n的整数数组nums和一个整数target,请你返回满足0 nums, int target) { Collections.sort
宫水三叶的刷题日记
·
2023-11-28 00:01
后端
LeetCode 力扣 76. 最小覆盖子串
用
双指针
left和right表示一个窗口。right向右移增大窗口,直到窗口包含了所有要求的字母。进行第二步。记录此时的长度,left向右移动,开始减少长度,每减少一次,就更新最小长度。
windliang
·
2023-11-28 00:05
【力扣刷题篇】 链表OJ题 --
双指针
的应用, 链表递归方式
力扣单链表递归,虚拟头节点21.合并两个有序链表1.题目介绍2.题目解析3.题解思路一--
双指针
迭代思路一优化思路二--递归138.随机链表的复制1.题目介绍2.题目解析3.题解思路一141.环形链表1
Joker不是Joker
·
2023-11-27 15:07
LeetCode刷题记录
leetcode
链表
算法
【C】OJ练习题---单身狗类问题、
双指针
类(数据结构顺序表)
本章我们介绍的两类练习题主要是关于C语言实现数据结构的复杂度和顺序表类问题。1、异或的巧妙应用我们刷题时候经常会遇到去重类的问题,更让人头疼的是有空间复杂度的限制,这就意味着我们不能重新创建一个数组用条件语句存放,所以这里我们巧妙地借用异或语句来实现。在做题之前我们先来看一下异或的一些特点:1、0和任何数异或还是那个数本身。我们用5举例:2、异或具有交换律。比如1^2^3=1^3^2.3、两个相同
朱C.
·
2023-11-27 15:04
数据结构
算法
数据结构
c语言
【
双指针
】
双指针
算法详解两道经典OJ【力扣27,力扣26,力扣38】超详细算法教程
【
双指针
】
双指针
算法详解两道经典OJ【力扣27,力扣26,力扣38】超详细算法教程今天又又到了我们刷力扣题的时间啦!
@背包
·
2023-11-27 15:01
算法
跟着博主刷Leetcode
c语言
算法
每日OJ题_算法_
双指针
⑦力扣15. 三数之和
目录力扣15.三数之和解析代码力扣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
GR_C
·
2023-11-27 15:58
每日OJ题
leetcode
算法
c++
数据结构
双指针
11. 盛最多水的容器
暴力递归是比较简单的方法,但是时间复杂度是o(n^2),所以在本题会超时.利用
双指针
通过对面积的特点(面积受制于短边的位置)来进行优化减少计算次数publicclassSolution{publicintmaxArea
CLOLUD3
·
2023-11-27 15:35
算法
算法
leetcode
数据结构
【力扣热题100,个人刷题笔记---上】
LeetCode热题100刷题笔记==递归的思想==哈希表1、两数之和(简单)49、字母异位词分组(中等)128、最长连续序列(中等)
双指针
283.移动零(简单)11.盛最多水的容器(中等)15.三数之和
躺平的吧啦啊吧
·
2023-11-27 09:25
CPP学习
算法
leetcode
数据结构
学习
【刷题笔记】数组-
双指针
||覆盖||重复元素
【刷题笔记】数组-
双指针
||覆盖||重复元素目录移除元素删除有序数组中的重复项删除有序数组中的重复项II分析移除元素https://leetcode.cn/problems/remove-element
han1254
·
2023-11-27 08:52
算法
笔记
算法
数据结构
删除链表的节点,剑指offer 18,力扣
目录题目地址:题目:我们直接看题解吧:解题方法:审题目+事例+提示:解题分析:解题思路(
双指针
):代码实现:代码实现(直接遍历):代码实现(单指针):题目地址:LCR136.删除链表的节点-力扣(LeetCode
大数据SQLboy
·
2023-11-27 07:40
剑指offer
#
链表
算法
leetcode
链表
每日一题 - 231126 - C - Minimize Abs 2
C-MinimizeAbs2TAG-
双指针
双指针
双指针
时间复杂度-O(D)O(\sqrtD)O(D)//#includeusingnamespacestd;#defineintlonglongvoidsolve
乐意奥AI
·
2023-11-27 05:44
ACM
算法
第7讲(二):
双指针
,指针运用
前言:前面讲的指针函数的内容有问题,现在已经改正。1指针运用:例题1-1(字符串逆序)(多组输入)写一个函数,可以逆序一个字符串的内容。#define_CRT_SECURE_NO_WARNINGS1#include#includevoidReverse_char(char*p,intend){char*right=p+end-1;char*left=p;while(left左旋3个->逆置前面3个
微风拂柳絮
·
2023-11-27 02:02
算法
每日一题--删除链表的倒数第 N 个结点
目录题目描述:思路分析:方法及时间复杂度:法一
双指针
(经典解法)法二计算链表长度(暴力解法)法三栈法四哈希表法五vector法六递归(烧脑解法)个人总结:题目描述:给你一个链表,删除链表的倒数第n个结点
每天存两块
·
2023-11-26 22:59
日拱一卒
功不唐捐
链表
数据结构
每日一题--相交链表
目录题目描述:思路分析:方法及时间复杂度:法一计算链表长度(暴力解法)法二栈法三哈希集合法四map或unordered_map法五
双指针
(经典解法)法六递归(烧脑解法)个人总结题目描述:相交返回相交结点
每天存两块
·
2023-11-26 22:54
日拱一卒
功不唐捐
链表
数据结构
代码随想录算法训练营---第二天
第二种为
双指针
法我自己的方法(前面使用了
双指针
,后面直接sort,在这里我的两个指针是指向数组的中央,刚开始我想的是,从零开始一个往左遍历,一个往右遍历,然后用一个新数组进行比较插入
Gemn 1
·
2023-11-26 21:52
算法
【Python算法】经典算法题型
前言;总结了几个经典算法题型,应用题的思路也是换汤不换药目录:滑动窗口技术二分查找冒泡排序递归算法
双指针
算法1.滑动窗口技术作用:解决字符或者数组的相关问题,维护一个固定大小的窗口,通过滑动窗口来处理数据
记录测试点滴
·
2023-11-26 21:45
Python
python
Leetcode977有序数组的平方(
双指针
解法)
Leetcode977有序数组的平方题目给你一个按非递减顺序排序的整数数组nums,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。答题/**\*@param{number[]}nums\*@return{number[]}*/varsortedSquares=function(nums){letleft=0letright=nums.length-1letres=[]while(left
伯约同学
·
2023-11-26 19:29
每日OJ题_算法_
双指针
_力扣11. 盛最多水的容器
力扣11.盛最多水的容器11.盛最多水的容器-力扣(LeetCode)难度中等给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i,0)和(i,height[i])。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。示例1:输入:[1,8,6,2,5,4,8,3,7]输出:49解释:图中垂直线代表输入数组[1,
GR_C
·
2023-11-26 19:09
算法
leetcode
c++
每日OJ题_算法_
双指针
⑥剑指 Offer 57. 和为s的两个数字
目录剑指Offer57.和为s的两个数字解析代码:剑指Offer57.和为s的两个数字LCR179.查找总价格为目标值的两个商品-力扣(LeetCode)难度简单购物车内的商品价格按照升序记录于数组price。请在购物车中找到两个商品的价格总和刚好是target。若存在多种情况,返回任一结果即可。示例1:输入:price=[3,9,12,15],target=18输出:[3,15]或者[15,3]
GR_C
·
2023-11-26 19:08
算法
leetcode
c++
双指针
数据结构
每日OJ题_算法_
双指针
⑤_力扣611. 有效三角形的个数
目录力扣611.有效三角形的个数解析代码力扣611.有效三角形的个数难度中等给定一个包含非负整数的数组nums,返回其中可以组成三角形三条边的三元组个数。示例1:输入:nums=[2,2,3,4]输出:3解释:有效的组合是:2,3,4(使用第一个2)2,3,4(使用第二个2)2,2,3示例2:输入:nums=[4,2,3,4]输出:4提示:1&nums){}};解析代码暴力法:(这里代码就不写了,
GR_C
·
2023-11-26 19:35
算法
leetcode
c++
C++ day8 反转字符串 反转字符串Ⅱ 替换空格 反转字符串里的单词 左旋转字符串
题目1:344反转字符串题目链接:反转字符串对题目的理解将给定的字符串反转空间是O(1)自己的思考遍历字符串然后存放到新的数组里,但是不满足空间O(1)想到反转链表使用
双指针
的思想,所以使用
双指针
法反转字符串
人来茶热
·
2023-11-26 17:07
c++
算法
开发语言
算法-23.链表中环的入口结点
思路:定义一个链表,从头结点开始执行,定义头节点到入口节点的距离为x,然后采用
双指针
的方式,一个fast指针每次移动两个节点,一个slow指针每次移动一个节点,然后查找两个节点是否最终会相等,如果相等表示存在相遇点
zzq_nene
·
2023-11-26 17:26
当Rust遇上LeetCode #76. 最小覆盖子串 [困难]
相关标签哈希表
双指针
字符串SlidingWindow解题思路算法:滑动窗口算法的思路是这样:1、我们在字符串S中
icespark
·
2023-11-26 13:52
力扣:42. 接雨水
解析:法1:
双指针
求每一列的雨水然后将它们相加,可以看出每一列雨水的高度,取决于该列左侧最高的柱子和右侧最高的柱子中更矮的那个柱子的高度。
empty__barrel
·
2023-11-26 11:26
单调栈
leetcode
算法
职场和发展
leecode27.移除元素
思路:逆向思维:把元素不相等的拿下来尾插,放入一个新的顺序表,返回新的顺序表的个数具体地:由于删除数组中等于val的元素,所以新的数组大小一定小于等于原数组的大小,可以把输出的数组写到输入的数组上,使用
双指针
的方法
yoouuung_
·
2023-11-26 09:44
算法
c语言
数据结构
上一页
21
22
23
24
25
26
27
28
下一页
按字母分类:
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
其他