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-双指针
Leetcode-
二叉树的最近公共祖先
给定一个二叉树,找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树T的两个结点p、q,最近公共祖先表示为一个结点x,满足x是p、q的祖先且x的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树:root=[3,5,1,6,2,0,8,null,null,7,4]示例示例1:输入:root=[3,5,1,6,2,0,8,null,null,7,4],
风暴小狼
·
2023-03-11 13:53
剑指offer:链表中倒数第k个结点
链表的题目首先要考虑的就是快慢指针,显然这道题也可以用
双指针
做。其次要考虑的就是各种边界问题。
聪民
·
2023-03-10 23:43
Leetcode算法模式总结
一般模式:Pattern:Slidingwindow,滑动窗口类型Pattern:twopoints,
双指针
类型Pattern:Fast&Slowpointers,快慢指针类型Pattern:MergeIntervals
婉妃
·
2023-03-10 20:58
LeetCode 16.最接近的三数之和
都是固定一个点,剩余两个点使用
双指针
查找,为了使用
双指针
,首先要对原数组进行排序。同时,为了方便运算,如果原数字有且仅有3个数字,直接返回其和。
唐三斤
·
2023-03-10 10:53
leetcode-
第168场周赛题目-你能从盒子里获得的最大糖果数
给你n个盒子,每个盒子的格式为[status,candies,keys,containedBoxes],其中:状态字status[i]:整数,如果box[i]是开的,那么是1,否则是0。糖果数candies[i]:整数,表示box[i]中糖果的数目。钥匙keys[i]:数组,表示你打开box[i]后,可以得到一些盒子的钥匙,每个元素分别为该钥匙对应盒子的下标。内含的盒子containedBoxes
8239e604d437
·
2023-03-10 07:35
Leetcode 680 验证回文字符串 Ⅱ && 剑指 Offer II 019 最多删除一个字符得到回文
解题思路解法:1.
双指针
方法,去判断回文字符串2.如果采用每次遍历、删除,然后再判断是否为回文字符串,时间复杂度是O(n^2),必然会超时,所以我们这时需要去找一下规律3.
双指针
从两边往中间遍历的时候,
itbird01
·
2023-03-10 04:50
2刷第二天(LeetCode977. 有序数组的平方、LeetCode209. 长度最小的子数组、LeetCode59. 螺旋矩阵 II)
2.考虑
双指针
解法,为什么能想到呢?①因为要变成非递减顺序,而大的值要么出现在最左端,要么出现在最右端,所以用
双指针
分别指向两个位置即可。②然后比较大小将大的值收集到新数组的尾部,指针
小宇刷题
·
2023-03-10 04:15
矩阵
算法
线性代数
【LeetCode与《代码随想录》】
双指针
篇:做题笔记与总结-JavaScript版
文章目录代码随想录主要题目27.移除元素344.反转字符串剑指Offer05.替换空格151.翻转字符串里的单词206.反转链表24.两两交换链表中的节点19.删除链表的倒数第N个结点面试题02.07.链表相交142.环形链表II15.三数之和18.四数之和相关题目26.删除排序数组中的重复项283.移动零844.比较含退格的字符串977.有序数组的平方代码随想录代码随想录代码随想录CSDN官方主
karshey
·
2023-03-09 16:05
leetcode
javascript
链表
75. 颜色分类
我觉得这道题的解法应该属于
双指针
吧,我大概记录一下我理解的思路,就是一个指针zero指向-1,一个two指向数组的长度,然后再来一个指针从0开始遍历,直到数组结束,当当前的值为0的时候,与++zero交换
含泪若笑
·
2023-03-09 11:07
模板解题 NSum
LeetCode第一题就是很经典的题目:twoSum,twoSum的解法有很多种,最经典的方法就是排序+
双指针
,如果我们掌握了这个核心解法,那么去解NSum的问题将会很easy!
hero的技术小黑屋
·
2023-03-09 07:18
算法 - 数组
双指针
力扣27题移除数组元素给你一个数组nums 和一个值val,你需要原地移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用O(1)额外空间并原地修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的
·
2023-02-24 14:08
数组算法双指针
C++去除多余的空格
C++去除多余的空格代码随想录:151.翻转字符串里的单词源自今天的力扣练习151.翻转字符串里的单词以“Theskyisblue“为例,使用
双指针
法来去移除空格,最后resize(重新设置)一下字符串的大小
Prejudices
·
2023-02-24 12:59
编程
c++
开发语言
用python输出以元音字母_Leetcode练习(Python):第345题:反转字符串中的元音字母:编写一个函数,以字符串作为输入,反转该字符串中的元音字母。...
思路:
双指针
,注意元音的大小写都要有。程序:classSolution:defreverseVowels(self,s:str)->str:vowel_list=[‘a‘,
职景
·
2023-02-23 18:48
用python输出以元音字母
Acwing蓝桥杯每日一题2.13截断数组
题目链接:3956.截断数组-AcWing题库解体思路:一开始想要用
双指针
,但最坏时间复杂度是n2,显然超时正确做法:要把一组数分成三等分,那么每等分的和avg是总和的三分之一找到前缀和等于avg*2的地方
-itsok
·
2023-02-23 12:44
蓝桥杯
蓝桥杯
算法
职场和发展
算法基础----尺取法(
双指针
)
尺取法:也可称为
双指针
,是算法竞赛种常用的一个优化技巧,用来解决序列区间问题。该方法主要有两种扫描方式:反向扫描和同向扫描。
jkaliang
·
2023-02-23 12:12
算法
c++
蓝桥杯
刷题指南-public
必会数组字符串排序贪心递归循环滑窗栈进制转换位运算队列哈希表链表线性表二分查找进阶图树DFS搜索BFS搜索动态规划前缀和排列组合矩阵
双指针
回溯状态机并查集正则表达式分治枚举统计建议必会部分知识
张紫娃
·
2023-02-23 12:07
深度优先
算法
【算法】
双指针
作者:指针不指南吗专栏:算法篇或许会很慢,但是不可以停下来文章目录1.
双指针
分类2.
双指针
思想3.
双指针
应用1.
双指针
分类常见问题分类(1)对于一个序列,用两个指针维护一段区间,比如快速排序。
指针不指南吗
·
2023-02-23 12:33
算法篇
算法
数据结构
c++
排序算法
Leetcode——76. 最小覆盖子串
概述76.最小覆盖子串注意题目给出的两点限制分析根据示例,我们可以知道要求的是一个满足条件的连续子串限制1告诉我们是找最小连续子串问题因此考虑滑动窗口思路
双指针
实现滑动窗口思路?
styfish
·
2023-02-23 12:57
LeetCode刷题
c++
刷题
双指针
滑动窗口
【蓝桥杯集训·每日一题】AcWing 3768. 字符串删减
文章目录一、题目1、原题链接2、题目描述二、解题报告1、思路分析2、时间复杂度3、代码详解三、知识风暴
双指针
一、题目1、原题链接3768.字符串删减2、题目描述给定一个由n个小写字母构成的字符串。
-dzk-
·
2023-02-23 12:17
蓝桥杯集训·每日一题+周赛
蓝桥杯
算法
职场和发展
数据结构
图论
leetcode-
每日一题2022.3.17 词典中最长的单词
题目力扣思路模拟先把words中的字符串放到哈希表里,再遍历words的每一个字符串,判断它从0开始的每一个子串是否存在于哈希表里。代码classSolution{public:stringlongestWord(vector&words){intans=-1;unordered_setset;for(stringword:words)set.insert(word);for(inti=0;iwo
还记得樱花正开~
·
2023-02-23 12:14
leetcode
leetcode
算法
职场和发展
【蓝桥集训】第四天——
双指针
作者:指针不指南吗专栏:Acwing蓝桥集训每日一题或许会很慢,但是不可以停下文章目录1.字符串删减2.最长连续不重复子序列3.数组元素的目标和1.字符串删减给定一个由n个小写字母构成的字符串。现在,需要删掉其中的一些字母,使得字符串中不存在连续三个或三个以上的x。请问,最少需要删掉多少个字母?如果字符串本来就不存在连续的三个或三个以上x,则无需删掉任何字母。输入格式第一行包含整数n。第二行包含一
指针不指南吗
·
2023-02-23 12:39
Acwing
蓝桥集训每日一题
算法
数据结构
c++
【LeetCode学习计划】《数据结构入门-C++》第14天 树
文章目录98.验证二叉搜索树方法1:中序遍历方法2:递归653.两数之和IV-输入BST方法1:中序遍历+
双指针
235.二叉搜索树的最近公共祖先方法1:两次查找方法2:一次查找LeetCode【学习计划
亡心灵
·
2023-02-22 01:17
LeetCode刷题
leetcode
数据结构
c++
算法
【每日一题Day122】LC1237找出给定方程的正整数解 |
双指针
二分查找
找出给定方程的正整数解【LC1237】给你一个函数f(x,y)和一个目标结果z,函数公式未知,请你计算方程f(x,y)==z所有可能的正整数数对x和y。满足条件的结果数对可以按任意顺序返回。尽管函数的具体式子未知,但它是单调递增函数,也就是说:f(x,y)>findSolution(CustomFunctioncustomfunction,intz){List>res=newArrayListz)
TIkitianya
·
2023-02-22 01:47
二分查找
双指针
每日一题
算法
数据结构
前端leetcde算法面试套路之
双指针
前言上一part刚写完二分和滑窗,他们都属于特殊的
双指针
方法,所以这一part直接汇总一下除了特殊的二分和滑窗外的其他
双指针
写法这里主要是快慢指针和端点指针,解决一些一次遍历搞不掂,多个指针协商干活不累的题目
·
2023-02-21 13:06
替换子串得到平衡字符串---
双指针
有一个只含有‘Q’,‘W’,‘E’,‘R’四种字符,且长度为n的字符串。假如在该字符串中,这四个字符都恰好出现n/4次,那么它就是一个「平衡字符串」。给你一个这样的字符串s,请通过「替换一个子串」的方式,使原字符串s变成一个「平衡字符串」。你可以用和「待替换子串」长度相同的任何其他字符串来完成替换。请返回待替换子串的最小可能长度。如果原字符串自身就是一个平衡字符串,则返回0。示例1:输入:s=“Q
惠菁
·
2023-02-21 12:40
golang
面试
指针
leetcode
java
golang
表现良好的最长时间段---
双指针
给你一份工作时间表hours,上面记录着某一位员工每天的工作小时数。我们认为当员工一天中的工作小时数大于8小时的时候,那么这一天就是「劳累的一天」。所谓「表现良好的时间段」,意味在这段时间内,「劳累的天数」是严格大于「不劳累的天数」。请你返回「表现良好时间段」的最大长度。示例1:输入:hours=[9,9,6,0,6,6,9]输出:3解释:最长的表现良好时间段是[9,9,6]。示例2:输入:hou
惠菁
·
2023-02-21 12:40
面试
golang
指针
leetcode
golang
java
LeetCode
LeetCode刷题记录
双指针
424.LongestRepeatingCharacterReplacement?
Taratantara
·
2023-02-21 12:36
Leetcode
leetcode面试题 02.07. 链表相交
面试题02.07.链表相交https://leetcode.cn/problems/intersection-of-two-linked-lists-lcci/
双指针
法1.两个链表都不为空时:设链表A的节点数为
richy430
·
2023-02-21 10:54
leetcode刷题总结
链表
leetcode
数据结构
代码随想录算法训练营|第二天977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II
977、有序数组的平方题目建议:本题关键在于理解
双指针
思想题目链接:https://leetcode.cn/problems/squares-of-a-sorted-array/文章讲解:https:/
Lily的内心os
·
2023-02-19 05:10
字符串 - 使用字符串模拟两数相加
和num2的长度都小于5100num1和num2都只包含数字0-9num1和num2都不包含任何前导零你不能使用任何內建BigInteger库,也不能直接将输入的字符串转换为整数形式算法思想:解法一:
双指针
解法分别定义两个指针
greedycr7
·
2023-02-18 17:50
2022-06-16 「532. 数组中的 k-diff 数对」
problems/k-diff-pairs-in-an-array/今天的题目,开始就想到了2种比较常见的思路:通过Hashset去重,找到符合差值为k的数组中大的那个存入,返回Hashset的长度;通过
双指针
柠香萌萌鸡
·
2023-02-18 16:04
75. 颜色分类
关键词:
双指针
,三指针,荷兰国旗问题classSolution:defsortColors(self,nums)->None:"""Donot
猫皮虎大人
·
2023-02-18 13:49
最长、最短子数组问题
某个数组中连续的一段这种连续子数组的问题与以前那种常常想到的动态规划不同,这里不能使用dp,因为整个大问题不能拆分为为更小的问题,整个数组中的数据都是没有关系的但是,给定的条件一般都满足某种情况使得我们可以使用
双指针
求解
屋顶上的蓝胖子
·
2023-02-18 07:25
算法相关
算法
数据结构
leetcode
(专栏索引版) leetcode高效刷题路径正确打开方式
leetcode高效刷题路径正确打开方式01第1课数组、链表、栈、队列02第2课哈希表、集合、映射03第3课前缀和、差分、
双指针
扫描04第4课递归、分治、树与图05第5课深度优先搜索、广度优先搜索06第
我也要当昏君
·
2023-02-17 17:36
算法刷题
leetcode
算法
数据结构
算法总结之滑动窗口
本文会将LeetCode里面的大部分滑动窗口问题分析、总结、分类,并提供一个可以参考的模版问题形式滑动窗口这类问题一般需要用到
双指针
来进行求解,另外一类比较特殊则是需要用到特定的数据结构,如Map,队
知止9528
·
2023-02-17 17:27
数据结构:链表基础OJ练习+带头双向循环链表的实现
目录一.leetcode剑指OfferII027.回文链表1.问题描述2.问题分析与求解(1)快慢指针法定位链表的中间节点(2)将链表后半部分进行反转附:递归法反转链表(3)
双指针
法判断链表是否回文二.
摆烂小青菜
·
2023-02-17 07:36
初阶数据结构
链表
数据结构
LeetCode-
题目详解(十):递归【深度优先遍历(DFS;前序遍历、中序遍历、后序遍历)】【岛屿问题、水域问题、单词搜索问题】、【广度优先遍历(BFS;借助queue结构)】
对于递归要分清以下概念:自己调用自己递归通常不在意具体操作,只关心初始条件和上下层的变化关系。递归函数需要有临界停止点,即递归不能无限制的执行下去。通常这个点为必须经过的一个数。递归通常能被其他方案替代(栈、数组正向求)。递归一、网格矩阵搜索问题(岛屿问题)1、网格类问题的DFS遍历方法1.1网格问题的基本概念1.2DFS的基本结构1.3如何避免重复遍历200.岛屿数量方法一:深度优先遍历DFS4
u013250861
·
2023-02-17 07:00
LeetCode
递归
(队列) LeetCode862. 和至少为 K 的最短子数组
示例1:输入:A=[1],K=1输出:1示例2:输入:A=[1,2],K=4输出:-1示例3:输入:A=[2,-1,2],K=3输出:3方法
双指针
思路:1.创建一个数组,其中P[i]=A[0]+A[1]
关山Kwan
·
2023-02-17 04:53
代码随想录刷题反思与总结——字符串相关题型
一、字符串反转相关:1.反转一整个字符串:利用
双指针
的方式(虽然能直接调用reverse函数,可手写实现该库函数)voidreverse(string&s,intstart,intend){for(inti
LuLuLuming
·
2023-02-07 13:33
c++
Leetcode day10
滑动窗口利用了
双指针
中的快慢指针技巧,我们可以将滑动窗口看做是快慢指针两个指针中间的区间,也可以可以
cookie222
·
2023-02-07 11:04
leetcode
算法
数据结构
Leetcode day09
数组
双指针
双指针
分为「对撞指针」、「快慢指针」、「分离
双指针
」。对撞指针:两个指针方向相反。适合解决查找有序数组中满足某些约束条件的一组元素问题、字符串反转问题。快慢指针:两个指针方向相同。
cookie222
·
2023-02-07 11:34
leetcode
算法
数据结构
Leetcode:206. 反转链表
示例1:输入:head=[1,2,3,4,5]输出:[5,4,3,2,1]示例2:输入:head=[1,2]输出:[2,1]示例3:输入:head=[]输出:[]
双指针
的解法:初始化:cur指向head
灰太狼家的小鸭子
·
2023-02-07 08:11
Leetcode
链表
数据结构
算法训练营Day3打卡--链表
其中pred.next=node.nextpred.next=node不易理解,建议画图辅助理解206.反转链表咱只能说跟Carl哥
双指针
法理解递归法,真的好清晰明了呀强推:帮你把链表操作学个通透!
weixin_51478443
·
2023-02-06 16:58
链表
算法
数据结构
JavaScript刷LeetCode拿offer-
双指针
技巧(上)
:例如:找到两个数使得它们相加之和等于目标数,采用单指针处理,则需要嵌套循环,使得时间复杂度增长为O(n^2);再例如:翻转数组,采用单指针处理,则需要额外内存空间,使得空间复杂度增长为O(n);利用
双指针
技巧
·
2023-02-06 11:32
2020牛客寒假算法基础集训营1
方法一
双指针
,维护一个修改次数小于等于k的区间#includeusingnamespacestd;typedeflonglongll;constintmod=1e9+7;constintN=1e5+5;
努力搬砖的小王
·
2023-02-06 07:45
算法刷题
acm竞赛
合并区间(区间重叠解法+
双指针
解法)(C++版本)
题目描述原题链接:56.合并区间解题思路局部最优解:按区间左边界从小到大排列,合并时候按最大右边界合并。全局最优解:合并所有有重叠的区间。(1)合并重叠区间,对最后一个单独处理先按左边界从小打到排序,每次前后两个区间对比,无重叠则将前面的区间加入结果集,有重叠则将两个区间合并。对最后一个区间大度处理。classSolution{public:staticboolcmp(constvector&a,
辰阳星宇
·
2023-02-06 07:19
数据结构与算法刷题
#
贪心算法
#
数组
leetcode
贪心算法
c++
Leetcode day7 URL化
思路
双指针
法,从后向前复制代码classSolution{public:stringreplaceSpaces(stringS,intlength){inti=length-1;intj=S.size(
conquer777
·
2023-02-05 18:24
LeetCode
leetcode
算法
职场和发展
双指针
反转字符串
packagemainfuncmain(){str:="asfdfe"println(str)ns:=reverse_str(str)println(ns)}funcreverse_str(strstring)string{if(len(str)==0){return""}arr:=[]byte(str)left:=0right:=len(arr)-1forleft
ES_KYW
·
2023-02-05 15:26
外观数列-力扣LeetCode 38题C++版
方法一:递归:
双指针
维护相同数字的左右边界c++版classSolution{public:stringcountAndSay(intn){if(n==1)return"1";strings=countAndSay
缄默0603
·
2023-02-05 10:56
LeetCode
leetcode
c++
算法
力扣19题打卡-删除单链表的倒数第N个数
通过构造虚拟头指针法:
双指针
法:快指针先走n步,再让快慢指针同时走。快指针到最后结束,再删除慢指针指向节点的下一个节点,完成。
Higher?
·
2023-02-05 10:14
算法
leetcode
算法
职场和发展
上一页
94
95
96
97
98
99
100
101
下一页
按字母分类:
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
其他