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-双指针
代码随想录算法训练营DAY9|字符串2
算法训练DAY9|字符串228.实现strStr()题目链接/文章讲解/视频讲解:代码随想录459.重复的子字符题目链接/文章讲解/视频讲解:代码随想录字符串总结题目链接/文章讲解:代码随想录
双指针
回顾文章讲解
XIAOHAIYOU
·
2024-02-01 14:20
算法
代码随想录算法训练营DAY8 | 字符串(1)
一、LeetCode344反转字符串题目链接:344.反转字符串https://leetcode.cn/problems/reverse-string/思路:
双指针
法交换。
橙南花已开
·
2024-02-01 14:18
代码随想录算法训练营
算法
leetcode
数据结构
算法第六天 滑动窗口
完成日期:7月14日,7月16日今日总结:滑动窗口,借助
双指针
它们的区别:滑动窗口:固定两个指针的间距,向右滑动
双指针
:两个快慢指针,间距动态变化,向右滑动判断有无重复元素,可用unorder_set无序集合
工一浩
·
2024-02-01 13:52
day60 84.柱状图中最大的矩形
双指针
写法优化:通过找到每个柱子的左边的小于该柱子高度的第一个柱子下标(动态规划,如果左侧第一个柱子高度大于当前柱子高度,就转为求左侧第一个柱子左侧小于左侧第一个柱子高度的柱子下标),右边类似。
quarter-moon
·
2024-02-01 12:28
哈希算法
算法
算法练习01——哈希&&部分
双指针
两数之和(*)242.有效的字母异位词(easy)49.字母异位词分组(*)349.两个数组的交集202.快乐数(1.使用Set存哈希,2.快慢指针)454.四数相加II383.赎金信15.三数之和*(
双指针
荒野大飞
·
2024-02-01 11:29
lc刷题
算法
哈希算法
面试经典 150 题 --
双指针
(总结)
125.验证回文串先对字符串进行预处理把大写字符转小写,然后将字母和数字全存入一个vector中;然后运用
双指针
·来进行判断;classSolution{public:boolisPalindrome(
ros275229
·
2024-02-01 01:18
leetcode
算法学习
leetcode
leetcoe面试150题
c++
算法
面试
代码随想录算法训练营第20天(二叉树7)| 二叉搜索树的最小绝对差 & 501.二叉搜索树中的众数 & 236. 二叉树的最近公共祖先
530.二叉搜索树的最小绝对差leetcode题目地址题目链接/文章讲解视频讲解需要领悟一下二叉树遍历上
双指针
操作,优先掌握递归//递归法classSolution{private:intresult=
he979731102
·
2024-01-31 22:36
算法
c++
leetcode
Codeforces Round 784 (Div. 4)
本场小结:1.对于一些奇怪的题目我们一定要去找存在哪些性质,构造题目和模拟题目同样也是发现性质之后尝试使用暴力枚举2.
双指针
的时候注意取结果的位置有时候用while比for更好3.对于位运算符的出现我们一定要考虑是否具有拆位的性质
梦念小袁
·
2024-01-31 17:59
div4
算法
c++
开发语言
leetcode-
存在重复元素
217.存在重复元素把列表转成集合,我们知道集合中是没有重复元素的,然后和原列表的长度做对比,不相等说明是有重复元素的classSolution:defcontainsDuplicate(self,nums:List[int])->bool:iflen(set(nums))==len(nums):returnFalseelse:returnTrue
独孤--蝴蝶
·
2024-01-31 13:29
leetcode
leetcode-
存在重复元素 II
219.存在重复元素II题解:可以使用哈希表来解决这个问题。遍历数组,对于每个元素,检查它是否已经在哈希表中出现过,如果出现过,则判断当前索引与哈希表中存储的索引之差是否小于等于k,如果是,则返回true;否则,将当前元素及其索引存入哈希表中。如果遍历完整个数组都没有找到满足条件的两个索引,则返回false。classSolution:defcontainsNearbyDuplicate(self
独孤--蝴蝶
·
2024-01-31 13:29
leetcode
LeetCode-
树-层序遍历-完全二叉树插入器
1简介完全二叉树特点:(1)叶子结点都在最底下的两层;(2)最后一层的叶子结点都靠左排列,即中间没有空洞;(3)除最后一层外,其他层的节点个数都要达到最大;2相关题目2.1完全二叉树插入器919.完全二叉树插入器剑指OfferII043.往完全二叉树添加节点这里实际上就是进行了层序遍历,代码具体如下:classCBTInserter{private:TreeNode*r;public:CBTIns
hclbeloved
·
2024-01-31 13:28
#
LeetCode-树
leetcode
leetcode-
完全二叉树的节点个数
222.完全二叉树的节点个数题解:使用递归的方法来解决这个问题。完全二叉树的节点个数可以通过以下公式计算:节点个数=左子树节点个数+右子树节点个数+1(根节点)首先,我们需要定义一个辅助函数countNodes(root)来计算以root为根节点的子树的节点个数。然后,我们可以使用递归的方法来计算完全二叉树的节点个数。#Definitionforabinarytreenode.#classTree
独孤--蝴蝶
·
2024-01-31 13:27
leetcode
平方数之和
解题方法:这道题我真的犹豫了,一时间不知道怎么做,后来就忍不住看了一下题解,思路就是
双指针
。我就按照这个思路做了一下,但是在实际编程的时候,遇到两个问题:
双指针
的调整:当i*i+j*j!
WAI_f
·
2024-01-31 09:48
P8661 [蓝桥杯 2018 省 B] 日志统计
[蓝桥杯2018省B]日志统计滑动窗口/
双指针
/单调队列/取尺题目描述小明维护着一个程序员论坛。现在他收集了一份“点赞”日志,日志共有NNN行。
潇与上海
·
2024-01-31 07:59
队列
洛谷刷题
双指针
蓝桥杯
leetcode刷题——415. 字符串相加
都不包含任何前导零你不能使用任何內建BigInteger库,也不能直接将输入的字符串转换为整数形式解题思路标签:字符串题目理解:模拟人工加法的过程,需要有一个变量来保存进位在计算时,从后往前相加因此,可以使用
双指针
Nuyoahgyc
·
2024-01-31 06:55
leetcode
字符串
leetcode
剑指offer面试题14 调整数组顺序使奇数位于偶数前面
考察点
双指针
遍历数组知识点题目分析要求奇数位于偶数前面,如果按照循环遍历的方式,可以每找到一个偶数就把该数字后面所有的数都往前移动1位,然后把该偶数放在最后空出来的位置,这样的时间复杂度是O(n^2)。
wellwang1993
·
2024-01-31 05:12
剑指offer
java版
算法
java
面试
leetcode
数据结构
面试经典 150 题 ---- 删除排序数组中的重复项 II
envType=study-plan-v2&envId=top-interview-150)方法一:
双指针
删除排序数组中的重复项II方法一:
双指针
这个题目和
在人间负债^
·
2024-01-31 05:07
LeetCode
面试
职场和发展
LeetCode_16_中等_最接近的三数之和
文章目录1.题目2.思路及代码实现(Python)2.1排序+
双指针
1.题目给你一个长度为nnn的整数数组numsnumsnums和一个目标值targettargettarget。
Lins号丹
·
2024-01-31 05:06
LeetCode进阶之路
算法
leetcode
【Leecode笔记】第二十周(1.24-1.30) 数组专题
【第一题】是否所有的1都至少相隔k个元素分析:
双指针
。两个指针指向相邻的两个1,下标相减假如都>3,那么符合。//不是吧阿sir,这么慢吗?
是菜鸟不是咸鱼
·
2024-01-31 01:34
Leecode
leetcode
数组
合并两个有序数组(
双指针
法)(库函数法)
题目在这:https://blog.csdn.net/qq_38737428?spm=1000.2115.3001.5343题目分析:这道题给的题目挺恶心的。就是将两个有序数组合并成一个有序数组。但是他给的数组是这样的:nums1=[1,2,3,0,0,0]这里实际上就是:nums1=[1,2,3]。后面的0只起到占位符的作用。法一:思路分析:这个0非常碍事。上来第一步先把0去掉。反着遍历数组。遇
深度不学习!!
·
2024-01-31 00:12
交流学习
个人笔记
leetcode
python
leetcode862. 和至少为 K 的最短子数组
shortest-subarray-with-sum-at-least-k/solution/liang-zhang-tu-miao-dong-dan-diao-dui-li-9fvh/由于数组里可能存在负数,所以无法使用
双指针
计算数组的前缀和
996冲冲冲
·
2024-01-31 00:51
前缀和
算法
数据结构
移动零|
双指针
移动零这个题目,可以用到
双指针
的方法。采用2个指针i、k,i用于遍历数组,找到不为0的数组与k指向的位置的值进行交换。
宇宙超粒终端控制中心
·
2024-01-30 23:26
leetcode
数据结构
C语言
c++
算法
leetcode
LeetCode.209. 长度最小的子数组
我们可以利用
双指针
left、right,right遍历当前数组,累加元素和sum,当发现大于等于target的时候,我们就可以缩小left和right框住的区域,也就是让le
会飞的皮卡丘EI
·
2024-01-30 23:35
leetcode刷题
java
算法
leetcode
代码随想录算法训练营第二天|977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II
时间复杂度最坏O()法二:可以利用
双指针
法,数组特性最大第二大分别在数组两头,head指数组头,tail指数组尾,两两分别比较,大的值进行平方放尾部,小的放回头部,tail指针逐步往前遍历。
strive340
·
2024-01-30 21:19
算法
数据结构
小红统计区间(hard) - 树状数组 + 离散化
题面分析存在负数不满足单调性,因此无法二分或者
双指针
,对于每一段符合条件的区间[l,r][l,r][l,r]都有sum[r]−sum[l−1]>=ksum[r]-sum[l-1]>=ksum[r]−sum
.y.a.o.
·
2024-01-30 19:34
算法
c++
树状数组
离散化
面试题 02.07. 链表相交
解题思路1、
双指针
;2、链表长度分别为a,b,公共长度为c;3、找到一个值为常数的等式,a+b-c;4、
双指针
pa,pb,pa从链表a开始遍历,遍历结束后开始遍历链表b,pa遍历的同时pb从链表b开始遍历
拽拽就是我
·
2024-01-30 10:42
leetcode刷题打卡
链表
数据结构
leetcode
LeetCode·面试题 02.07.链表相交·
双指针
链接:https://leetcode.cn/problems/intersection-of-two-linked-lists-lcci/solution/by-xun-ge-v-4rpz/来源:力扣(LeetCode)著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。题目示例思路解题思路题目意思简单来说,就是求两个链表交点节点的指针。这里同学们要注意,交点不是数值相等,而是指
迅~
·
2024-01-30 10:41
LeetCode刷题笔记
链表
leetcode
数据结构
链表相交 Java
双指针
法
题目描述给你两个单链表的头节点headA和headB,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回null。图示两个链表在节点c1开始相交:题目数据保证整个链式结构中不存在环。注意,函数返回结果后,链表必须保持其原始结构。示例1:输入:intersectVal=8,listA=[4,1,8,4,5],listB=[5,0,1,8,4,5],skipA=2,skipB=3输出:
一陸向北
·
2024-01-30 10:40
LeetCode思路分享
#
链表
leetcode
链表
java
算法
数据结构
力扣
双指针
算法
图示:(
双指针
)为什么要用
双指针
算法?
啊丢_
·
2024-01-30 09:01
算法
数据结构
leetcode 第611题-有效三角形的个数
valid-triangle-number/packageleetcodeimport"sort"funcTriangleNumber(nums[]int)int{sort.Ints(nums)//先排序varansint//固定最长边,
双指针
移动选取符合条件的另外两条边
一对码农
·
2024-01-30 08:33
19. 删除链表的倒数第 N 个结点(力扣LeetCode)
文章目录19.删除链表的倒数第N个结点题目描述将删除倒数第n个节点转化为删除第n个节点
双指针
19.删除链表的倒数第N个结点题目描述给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。
林海绮律
·
2024-01-30 08:02
leetcode
链表
leetcode
数据结构
c++
算法第二十三天-合并两个有序数组
合并两个有序数组题目要求解题思路方法一、先合并,后排序直接利用Python自带的语句进行合并和排序方法二、
双指针
方法一没有利用到原数组有序的性质利用
双指针
,可以有效减少时间代码方法一classSolution
alstonlou
·
2024-01-30 06:41
算法基础
算法
python
leetcode
面试经典 150 题 -- 数组 / 字符串 (总结)
总的链接面试经典150题-学习计划-力扣(LeetCode)全球极客挚爱的技术成长平台88.合并两个有效数组因为有序,直接设置
双指针
置于两个数组的末尾,从后往前直接模拟就好了,贪心的比较两个指针所指元素
ros275229
·
2024-01-30 05:10
leetcode
算法学习
leetcode
算法
面试
【
leetcode-
树】不同的二叉搜索树 II
【
leetcode-
树】不同的二叉搜索树II题目:给定一个整数n,生成所有由1...n为节点所组成的二叉搜索树。
程序员小2
·
2024-01-30 04:36
leetcode 19. 删除链表的倒数第 N 个结点 java解法
解题思路为了删除倒数第n个节点,我们可以使用
双指针
法。首先,我们将第一个指针first移动到链表的第n+1个节点,然后将第二个指针second移动到链表的开头。
程序员阿伦
·
2024-01-30 03:25
leetcode
链表
java
面试经典 150 题 ---- 移除元素
面试经典150题----移除元素移除元素方法一:
双指针
方法二:
双指针
优化移除元素方法一:
双指针
题目要求在原数组的基础进行元素的删除,所以输出的数组长度一定小于原数组的长度,因此可以使用
双指针
,rigth
在人间负债^
·
2024-01-30 02:19
LeetCode
面试
职场和发展
代码随想录算法训练02 | 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II
977.有序数组的平方题目建议:本题关键在于理解
双指针
思想题目链接:力扣(LeetCode)官网-全球极客挚爱的技术成长平台文章讲解:代码随想录视频讲解:
双指针
法经典题目|LeetCode:977.有序数组的平方
纽北KING
·
2024-01-30 00:57
LeetCode刷题训练
算法
数据结构
c++
LeetCode(1)
目录时间复杂度分析:递归题1:爬楼梯解法1:递归解法2:循环题2:两数之和解法1:暴力枚举解法2:哈希表题3:合并两个有序数组解法1:直接合并后排序解法2:
双指针
解法3:逆向
双指针
题4:移动零解法1:
双指针
两次遍历解法
康小汪
·
2024-01-29 23:57
算法
leetcode
数据结构
算法
代码随想录day10 Java版
今天进入
双指针
环节,由于题目都做过,所以选三题来复习27.移除元素这里重点研究下边界值和特殊情况的处理下面是我原来写的代码,没有考虑边界classSolution{publicintremoveElement
cangshanjiang
·
2024-01-29 22:12
java
算法
leetcode
LeetCode Hot100 回顾(一)
双指针
11.盛最多水的容器两个指针从数组的两端开始进行处理,每次移动指向
9ack!?
·
2024-01-29 21:20
leetcode
数据结构
算法
leetcode-
颠倒二进制位
190.颠倒二进制位题解:我们可以使用位运算来解决这个问题。具体步骤如下:初始化一个变量res为0,用于存储颠倒后的二进制位。循环32次,每次将n的最低位取出,并将其添加到res的最高位上。将n右移一位,将res左移一位。返回res作为最终结果。classSolution:defreverseBits(self,n:int)->int:res=0foriinrange(32):res=(res>=
独孤--蝴蝶
·
2024-01-29 18:38
leetcode
leetcode-
位1的个数
191.位1的个数题解:我们可以使用位运算来解决这个问题。具体步骤如下:初始化一个变量count为0,用于存储二进制表达式中数字位数为'1'的个数。循环32次,每次将n与1进行按位与运算,如果结果为1,则说明当前位是1,将count加1。将n右移一位。返回count作为最终结果。classSolution:defhammingWeight(self,n:int)->int:count=0for_i
独孤--蝴蝶
·
2024-01-29 18:38
leetcode
leetcode-
快乐数
202.快乐数题解:定义一个函数get_sum(n),用于计算n的每一位数字的平方和。初始化一个集合visited,用于记录已经出现过的数字。循环计算n的每一位数字的平方和,直到n等于1或者出现重复的数字为止。如果n等于1,则返回True,表示n是快乐数;否则返回False,表示n不是快乐数。classSolution:defisHappy(self,n:int)->bool:defget_sum
独孤--蝴蝶
·
2024-01-29 18:38
leetcode
leetcode-
移除链表元素
203.移除链表元素题解:创建一个虚拟头结点指向头结点head,定义一个cur指针指向这个虚拟头结点,因为是单向链表,每次判断的时候只能使用当前指针cur的next节点值和给定值进行判断,所以循环判断的终止条件是cur.next!=None。#Definitionforsingly-linkedlist.#classListNode:#def__init__(self,val=0,next=Non
独孤--蝴蝶
·
2024-01-29 18:38
leetcode
leetcode-
买卖股票的最佳时机
121.买卖股票的最佳时机为了解决这个问题,你需要找到价格数组中最低点和最高点的最大差值,但要确保最高点在最低点之后。你可以通过遍历价格数组一次来完成这个操作:初始化一个变量min_price为一个非常大的数,它将跟踪你遍历过的价格中的最小值。初始化一个变量max_profit为0,它将跟踪可实现的最大利润。遍历价格数组prices。对于每个价格,你都会:更新min_price为当前价格和min_
独孤--蝴蝶
·
2024-01-29 18:07
leetcode
leetcode-
反转链表
206.反转链表题解:定义两个指针prev和cur,分别指向当前节点的前一个节点和当前节点,初始时,prev为None,cur为head,在遍历的过程中,我们需要创建一个临时指针用来指向cur.next,因为cur指向prev之后,就会和cur.next断链了。遍历过程是,每次将cur的next指针执行prev,然后将prev和cur分别向后移动一位,当遍历到尾部时,链表就被反转了,反转后的链表头
独孤--蝴蝶
·
2024-01-29 18:34
leetcode
数据结构·顺序表经典例题(
双指针
)
本节讲解两道顺序表经典例题,运用到了
双指针
的思想
双指针
并不是两个指针,而是用两个类似指针的东西去扫描数组,以达到简化运算的效果1.移除元素OJ链接:力扣(LeetCode)官网-全球极客挚爱的技术成长平台本体给出一个数组
atlanteep
·
2024-01-29 16:31
数据结构之谜
数据结构
python算法与数据结构---排序和归并排序
的子数组从上往下的合并:两个有序的子区域两两向上合并;体现了分治思想,稳定排序复杂度平均时间复杂度:O(NlogN)最坏时间复杂度:O(NlogN)归并排序合并过程temp数组用于存储合并结果,合并后拷贝回原数组;
双指针
茨球是只猫
·
2024-01-29 16:12
算法
数据结构
python
排序算法
python算法与数据结构---滑动窗口&
双指针
学习目标了解滑动窗口的基本原理;学会用使用python语言解答滑动窗口经典题目;了解
双指针
的基本原理;学会使用python语言解答
双指针
经典题目;滑动窗口209.长度最小的子数组https://leetcode.cn
茨球是只猫
·
2024-01-29 16:40
python
算法
数据结构
双指针
滑动窗口
题解——两种算法解Leetcode题库第977题(暨
双指针
法小结)
一.Leetcode题库第977题题目977.有序数组的平方二.解法一——暴力解法算法思路:for循环遍历数组,对数组元素做平方操作;调用sorted()函数对处理后的数组进行快速排序算法时间复杂度:O(n+nlogn)代码classSolution(object):defsortedSquares(self,nums):""":typenums:List[int]:rtype:List[int]
认真编程的紫衫龙王
·
2024-01-29 12:39
Leetcode题解
leetcode
python
数据结构
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
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
其他