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.1题目一总结前言最近感觉有点疲倦,学习的时间不多,但不想中断写博客的连续,本篇文章就记录一下在写c语言练习过程中利用
双指针
解题。
PYSpring
·
2024-01-07 19:23
c语言练习题
c语言
LeetCode-数组-
双指针
-中等难度
文章目录
双指针
1.删除有序数组中的重复项(入门)1.1题目描述1.2解题思路1.3代码实现2.删除有序数组中的重复项II(简单)2.1题目描述2.2解题思路2.3代码实现3.移动零(简单)3.1题目描述
码拉松
·
2024-01-07 16:45
Leetcode
leetcode
算法
80. 删除有序数组中的重复项 II
80.删除有序数组中的重复项II题目链接:80.删除有序数组中的重复项II代码如下://
双指针
法classSolution{public:intremoveDuplicates(vector&nums)
咔咔咔的
·
2024-01-07 11:21
leetcode
c++
vue diff算法
算法概念虽然点进来的大家应该都知道diff算法是什么,不过按照流程还是要简单说一下,按我个人的理解,Vue的diff算法是对新旧两条虚拟DOM进行逐层比较并更新真实DOMdiff算法是平级比较,不考虑跨级的情况,采用深度递归+
双指针
的方式进行比较先比较是否是相同节点如果是相同节点比较属性
寻ing
·
2024-01-07 05:04
vue源码
vue
JS
vue.js
前端
javascript
【面试高频算法解析】算法练习5 深度优先搜索
通过策略性地练习精选的经典题目,帮助您深度理解每种算法,避免出现刷了很多算法题,还是一知半解的状态专栏导航二分查找回溯(Backtracking)
双指针
滑动窗口深度优先搜索广度优先搜索贪心算法单调队列堆
worxfr
·
2024-01-07 01:59
算法
算法
面试
深度优先
leetcode
职场和发展
【面试高频算法解析】算法练习1 二分查找
通过策略性地练习精选的经典题目,帮助您深度理解每种算法,避免出现刷了很多算法题,还是一知半解的状态专栏导航二分查找回溯(Backtracking)
双指针
滑动窗口深度优先搜索广度优先搜索贪心算法单调队列堆
worxfr
·
2024-01-07 01:28
算法
面试
算法
职场和发展
二分查找
leetcode
【面试高频算法解析】算法练习4 滑动窗口
通过策略性地练习精选的经典题目,帮助您深度理解每种算法,避免出现刷了很多算法题,还是一知半解的状态专栏导航二分查找回溯(Backtracking)
双指针
滑动窗口深度优先搜索广度优先搜索贪心算法单调队列堆
worxfr
·
2024-01-07 01:28
算法
算法
面试
数据结构
leetcode
滑动窗口
【面试高频算法解析】算法练习6 广度优先搜索
通过策略性地练习精选的经典题目,帮助您深度理解每种算法,避免出现刷了很多算法题,还是一知半解的状态专栏导航二分查找回溯(Backtracking)
双指针
滑动窗口深度优先搜索广度优先搜索贪心算法单调队列堆
worxfr
·
2024-01-07 01:54
算法
算法
面试
广度优先
leetcode
数据结构
职场和发展
算法训练day60|单调栈part0
他的右边第一个比他小的柱子高度为2,index为4right对5来说,(left,right)范围内(不包括left,right)都是比5高的柱,所以对5的体积可以是5(h[mid])*(right-left-1)
双指针
解法
AdrianLeon
·
2024-01-06 23:18
算法
接雨水【
双指针
】【前缀后缀】
Problem:42.接雨水文章目录思路&解题方法复杂度前缀后缀
双指针
思路&解题方法前缀后缀应该是最容易想到的方法了,
双指针
需要多理解一下。
Alan_Lowe
·
2024-01-06 20:46
研一开始刷LeetCode
双指针
反转字符串【
双指针
】
本文是力扣LeeCode-344.反转字符串学习与理解过程,本文仅做学习之用,对本题感兴趣的小伙伴可以出门左拐LeeCode。编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用O(1)的额外空间解决这一问题。示例1:输入:s=[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“
666-LBJ-666
·
2024-01-06 20:15
#
每日一道LeeCode算法题
leetcode
算法
数据结构
力扣151. 反转字符串中的单词
双指针
常规思路:按照空格split字符串,得到字符串单词数组;然后每个单词进行反转(reverse);然后使用空格将反转后的单词拼接(join)起来;C++可以在字符串上直接操作:先反转字符串;然后遍历字符串对字符进行操作
slowfastflow
·
2024-01-06 20:03
力扣实践
leetcode
算法
职场和发展
LeetCode——2487. 从链表中移除节点
思路:这个题我最开始以为是
双指针
,然后找最大值就好了。其实如果给的是数组的话
双指针
的方法也应该是可以的。但是他给的是一个链表,我们就不太好通过index处理了。
玄昌盛不会编程
·
2024-01-06 18:43
算法
leetcode
算法
java
快速排序和冒泡排序
目录前言一.冒泡排序二.快速排序1.Hoare法2.填空法3.
双指针
法4.快排优化(三数取中)5.快排优化(递归优化)6.快排优化(重复数据)7.快排非递归前言排序算法是计算机科学中的基础工具之一,对于数据处理和算法设计有着深远的影响
MindibniM
·
2024-01-06 17:49
数据结构
c语言
算法
数据结构
排序算法
力扣:15.三数之和
两数之和降低复杂度:1.问题描述:一个数组中找到两个数字之和是taeget例如:[2,7,11,15,19,21],target=302.解法一:暴力枚举时间复杂度为O(n^2)放心力扣绝对不会让你过的解法二:
双指针
圆圆无敌
·
2024-01-06 17:15
双指针算法
leetcode
算法
680. 验证回文字符串 Ⅱ
本题其实有个很暴力的思路,就是一开始就验证整个字符串是不是回文串,
双指针
一个在最前,一个在最后相向而行。之后如果遇见了不相等的字符,就有两种可能,一种是删除前面的一
放下梧菲
·
2024-01-06 13:02
leetcode:151反转字符串中的单词 c语言,
双指针
给你一个字符串s,请你反转字符串中单词的顺序。单词是由非空格字符组成的字符串。s中使用至少一个空格将字符串中的单词分隔开。返回单词顺序颠倒且单词之间用单个空格连接的结果字符串。注意:输入字符串s中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果字符串中,单词间应当仅用单个空格分隔,且不包含任何额外的空格。示例1:输入:s="theskyisblue"输出:"blueisskythe"示
glut底层学生
·
2024-01-06 12:35
leetcode
c语言
算法
Java解决峰与谷问题
示例:输入:[5,3,1,2,3]输出:[5,1,3,2,3]提示:nums.length<=1000002知识点排序
双指针
奇偶数判断03我的题
宣布无人罪
·
2024-01-06 12:18
蓝桥杯
java
算法
排序算法
代码随想录算法训练营第二十一天|530.二叉搜索树的最小绝对差、501.二叉搜索树中的众数、236. 二叉树的最近公共祖先
530.二叉搜索树的最小绝对差题目链接:力扣(LeetCode)官网-全球极客挚爱的技术成长平台文档讲解:代码随想录视频讲解:二叉搜索树中,需要掌握如何
双指针
遍历!
EstherLockhart
·
2024-01-06 11:02
代码随想录算法训练营
算法
leetcode初级算法|字符串
方法一:切片、reverses.reverse()s=s[::-1]方法二:
双指针
,对称交换defreverseString(s
renyjenny
·
2024-01-06 11:29
Leecode 809.情感丰富的文字 ----
双指针
题目描述:有时候人们会用重复写一些字母来表示额外的感受,比如"hello"->"heeellooo","hi"->"hiii"。我们将相邻字母都相同的一串字符定义为相同字母组,例如:"h","eee","ll","ooo"。对于一个给定的字符串S,如果另一个单词能够通过将一些字母组扩张从而使其和S相同,我们将这个单词定义为可扩张的(stretchy)。扩张操作定义如下:选择一个字母组(包含字母c)
Roverose
·
2024-01-06 02:47
c++
数据结构
算法
【华为OD机试真题2023C&D卷 JAVA&JS】最小矩阵宽度
华为OD2023(C&D卷)机试题库全覆盖,刷题指南点这里最小矩阵宽度知识点
双指针
时间限制:1s空间限制:256MB限定语言:不限题目描述:给定一个矩阵,包含N*M个整数,和一个包含K个整数的数组。
若博豆
·
2024-01-06 02:28
java
javascript
算法
华为od
双指针
|11.盛最多水的容器
11.盛最多水的容器**题目:**给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i,0)和(i,height[i])。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。题目链接:11.盛最多水的容器解题思路及代码:#暴力法超时classSolution{publicintmaxArea(int[]height){intresul
没脑袋的喵
·
2024-01-06 02:25
代码随想录
java
数据结构
[Leetcode][贪心法]相关题目汇总/分析/总结
贪心+
双指针
IntegertoRoman将整数转为罗马数字JumpGame/JumpGameII数组中的每个值表示在当前位置最多能向前面跳几步,判断给出的数组是否否存
蛮三刀酱
·
2024-01-06 00:41
移动零【
双指针
】
Problem:283.移动零文章目录思路&解题方法复杂度Code思路&解题方法使用
双指针
,左指针指向当前已经处理好的序列的尾部,右指针指向待处理序列的头部。
Alan_Lowe
·
2024-01-06 00:15
研一开始刷LeetCode
双指针
1047. 删除字符串中的所有相邻重复项
==ch[slow-1]){slow--;//为什么要--,因为新字符串应该退出一个字符}else{slow++;}fast++;}returnnewString(ch,0,slow);}}原地操作,
双指针
发
贝耶儿
·
2024-01-05 22:36
数据结构
算法
541. 反转字符串II
双指针
法classSolution{publicStringreverseStr(Strings,intk){char[]ch=s.toCharArray();for(inti=0;i
贝耶儿
·
2024-01-05 22:36
java
算法
数据结构
双指针
算法--最长列许不重复子序列
数据范围1≤n≤105输入样例:512235输出样例:3思路:
双指针
题目的核心思想就是把
橘子味的茶二
·
2024-01-05 21:40
acwing算法基础
算法
双指针
--- 数组元素的目标和
目录数组元素的目标和思路:暴力做法思路:
双指针
做法:代码:原题链接数组元素的目标和给定两个升序排序的有序数组A和B,以及一个目标值x。数组下标从0开始。
橘子味的茶二
·
2024-01-05 21:40
acwing算法基础
算法
双指针
--判断子序列
目录判断子序列
双指针
算法思路代码原题链接判断子序列给定一个长度为n的整数序列a1,a2,…,an以及一个长度为m的整数序列b1,b2,…,bm。请你判断a序列是否为b序列的子序列。
橘子味的茶二
·
2024-01-05 20:33
acwing算法基础
算法
双指针
解决链表百分之百的问题!
文章目录一.合并两个有序链表【力扣21】题目表述解法1、循环+
双指针
解法2、递归二、删除有序列表的重复元素【力扣83】题目表述解法1、常规解法解法2、递归三、环形链表【力扣141】题目表述解法:快慢指针相遇问题四
大左不想摆烂
·
2024-01-05 18:56
力扣刷题
1024程序员节
leetcode47题
文章目录1数组/字符串1.1文本左右对齐2
双指针
3滑动窗口3.1串联所有单词的子串4矩阵5哈希表5.1最长连续序列6区间6.1用最少数量的箭引爆气球7栈7.1基本计算器8链表8.1k个一组翻转链表8.2LRU
triumph_666
·
2024-01-05 12:44
算法
leetcode
代码随想录算法训练营day4|24.两两交换链表中的节点、19.删除链表的倒数第N个节点、链表相交、142.环形链表II
题目链接:24.两两交换链表中的节点-力扣(LeetCode)文章讲解/视频讲解:代码随想录19.删除链表的倒数第N个节点
双指针
的操作,要注意,删除第N个节点,那么我们当前遍历的指针一定要指向第N个节点的前一个节点
万事大吉CC
·
2024-01-05 12:40
代码随想录
java
面试
开发语言
代码随想录算法训练营day2|977.有序数组的平方、209.长度最小的子数组、59.螺旋矩阵II
第一章数组part02977.有序数组的平方,209.长度最小的子数组,59.螺旋矩阵II,总结977.有序数组的平方题目建议:本题关键在于理解
双指针
思想题目链接:力扣(LeetCode)官网-全球极客挚爱的技术成长平台文章讲解
万事大吉CC
·
2024-01-05 12:09
代码随想录
算法
Golang leetcode160相交链表 map
双指针
迭代
文章目录相交链表leetcode160暴力求解map
双指针
1
双指针
2巧妙该部分源于leetcode官方题解相交链表leetcode160由于链表深度不一致,所以不太好使用递归检测方法:相交链表,即两个链表上一个节点的
鳄梨阿龙
·
2024-01-05 08:08
golang
leetcode
链表
数据结构
[排序算法] 如何解决快速排序特殊情况效率低的问题------三路划分
前言在[C/C++]排序算法快速排序(递归与非递归)一文中,对于快速排序的单趟排序一共讲了三种方法:hoare、挖坑法、
双指针
法,这三种方法实现的快速排序虽然在一般情况下效率很高,但是如果待排序数据存在大量重复数据
Qiiq✘GK
·
2024-01-05 07:04
数据结构
排序算法
算法
数据结构
【面试高频算法解析】算法练习3
双指针
通过策略性地练习精选的经典题目,帮助您深度理解每种算法,避免出现刷了很多算法题,还是一知半解的状态专栏导航二分查找回溯
双指针
滑动窗口深度优先搜索广度优先搜索算法解析
双指针
技术是一种常用的算法策略,它使用两个指针以不同的速度或方向遍历数据结构
worxfr
·
2024-01-05 07:53
算法
面试
算法
职场和发展
leetcode
双指针
<leetcode修炼>
双指针
训练-移动零
题目:给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。方法1:快慢指针快指针负责遍历数组中所有元素,慢指针负责记录不为0的元素,最后慢指针所在下标位置及其后边位置的元素置位0即可publicvoidmoveZeroes1(int[]nums){if(nums.length==0){return;}intfa
程序员落雪
·
2024-01-05 05:20
算法
leetcode
算法
数据结构
【算法刷题】## 算法题目第1讲:
双指针
处理数组题目 带视频讲解
算法题目第一讲:
双指针
处理数组题目解决力扣:[344.反转字符串][167.两数之和II-输入有序数组][26.删除有序数组中的重复项][27.移除元素][283.移动零][5.最长回文子串]配合b站视频讲解食用更佳
weixin_40293999
·
2024-01-05 01:35
数据结构与算法
算法
11.盛水最多的容器(
双指针
,C解法)
题目描述:给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i,0)和(i,height[i])。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。示例1:输入:[1,8,6,2,5,4,8,3,7]输出:49解释:图中垂直线代表输入数组[1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为
努力努力的脆脆鲨
·
2024-01-05 01:59
LeetCode热题100
c语言
算法
leetcode
283.移动零(
双指针
,C解法)
题目描述:给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。示例1:输入:nums=[0,1,0,3,12]输出:[1,3,12,0,0]示例2:输入:nums=[0]输出:[0]我的解法(暴力):voidmoveZeroes(int*nums,intnumsSize){intj,temp;for(inti=
努力努力的脆脆鲨
·
2024-01-05 01:28
LeetCode热题100
算法
数据结构
leetcode
c语言
15.三数之和(
双指针
,C解答附详细分析)
题目描述:给你一个整数数组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]+n
努力努力的脆脆鲨
·
2024-01-05 01:28
LeetCode热题100
c语言
算法
数据结构
leetcode
2021-12-2序列查询新解(区间划分,不用前缀和的最简解法)(c/c++实测满分)
总结:出现超时问题时有双重循环,将双重循环改至单层循环或找到两层循环的关系改用
双指针
;只有单层循环,看循环判断条件能否减小以减少循环次数。
努力努力的脆脆鲨
·
2024-01-05 01:58
ccf真题
c++
算法
双指针
类型题目
27.移除元素给你一个数组nums和一个值val,你需要原地移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用O(1)额外空间并原地修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例1:给定nums=[3,2,2,3],val=3,函数应该返回新的长度2,并且nums中的前两个元素均为2。你不需要考虑数组中超出新长度后面的元素。
mingchen_peng
·
2024-01-05 00:38
leetcode
算法
leetcode
划分字母区间(
双指针
+哈希表助力合并重叠区间)
文章目录1区间贪心(
双指针
未优化)2区间贪心(
双指针
+哈希表助力合并重叠区间)致谢1区间贪心(
双指针
未优化)一开始,很容易想到用
双指针
去定位两个相同字符的最远区间,然后使用重叠区间合并的思维去得到最终片段
SL_World
·
2024-01-05 00:06
Leetcode贪心专题
leetcode-链表
迭代遍历的话一般可能用的多的是
双指针
,快慢指针,三指针(pre,cur,next)这些,最好画图理清链表节点next域的指向要如何修改,相交链表、环这种问题适合尝试
双指针
。
weixin_43852091
·
2024-01-04 23:42
leetcode
链表
leetcode
数据结构
【LeetCode】剑指 Offer 52. 两个链表的第一个公共节点 - Go语言题解
文章目录一、题目描述二、两个要点1.判断节点相同的条件2.对“第一个公共节点”的理解三、我的题解-遍历法四、哈希表法五、
双指针
一、题目描述输入两个链表,找出它们的第一个公共节点。
想变厉害的大白菜
·
2024-01-04 23:42
LeetCode
链表
leetcode
golang
【LeetCode-剑指offer】--19.验证回文串II
19.验证回文串II方法:
双指针
首先考虑如果不允许删除字符,如何判断一个字符串是否是回文串。常见的做法是使用
双指针
。
小d<>
·
2024-01-04 23:40
#
剑指offer
leetcode
算法
Leetcode--160--相交链表【链表、栈、
双指针
法】
萌新记录~多多指教链接:https://leetcode-cn.com/problems/intersection-of-two-linked-lists/solution/xiang-jiao-lian-biao-by-leetcode/来源:力扣(LeetCode)著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。题目描述相交链表编写一个程序,找到两个单链表相交的起始节点。如
Paris_郑丹丹
·
2024-01-04 23:09
数据结构与算法
链表
leetcode
数据结构
LeetCode-剑指 Offer 题目集
题号题目题解链接标签备注遍数03数组中重复的数字【LeetCode-剑指Offer】03.数组中重复的数字数组、哈希表04二维数组中的查找【LeetCode】240.搜索二维矩阵II(同剑指Offer04)数组、
双指针
白露塞纳
·
2024-01-04 23:35
单例模式
java
开发语言
上一页
12
13
14
15
16
17
18
19
下一页
按字母分类:
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
其他