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
#双指针
力扣:344. 反转字符串(字符串)
【题解】
双指针
注意:(1)左右指针逐渐从两边靠拢,指针指向元素互换(2)i&s){for(inti=0,j=s.size()-1;i<s.size()/2;i++,j--){swap(s[i],s
MEIJI75
·
2024-02-14 13:34
代码随想录
算法刷题
leetcode
c++
数据结构
反转字符串--
双指针
344.反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组char[]的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用O(1)的额外空间解决这一问题。你可以假设数组中的所有字符都是ASCII码表中的可打印字符。示例1:输入:[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]示例2:输入:[“H”,“a”,“n
向光.
·
2024-02-14 13:34
Leetcode每日刷题
#
双指针
字符串
算法
leetcode
双指针
算法 | 力扣344. 反转字符串
本文讲解力扣344.反转字符串问题也就是使用
双指针
的思想很简单的一道题1题目编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组char[]的形式给出。
比特的一天
·
2024-02-14 13:02
leetcode详解
字符串
指针
算法
数据结构
leetcode
leetcode(
双指针
)11.盛最多水的容器(C++详细解释)DAY9
示例提示2.解答思路两层for循环的做法时间会超时因此利用
双指针
进行一遍遍历。我们要清楚:每轮向内
小Q小Q
·
2024-02-14 07:48
C++刷题
leetcode
c++
算法
4. 寻找两个正序数组的中位数
示例1:nums1=[1,3]nums2=[2]则中位数是2.0示例2:nums1=[1,2]nums2=[3,4]则中位数是(2+3)/2=2.5本题如果没有复杂度要求,那会极其简单,用
双指针
遍历的复杂度
放下梧菲
·
2024-02-14 03:30
算法沉淀——链表(leetcode真题剖析)
.两两交换链表中的节点03.重排链表04.合并K个升序链表05.K个一组翻转链表链表常用技巧1、画图->直观形象、便于理解2、引入虚拟"头节点"3、要学会定义辅助节点(比如双向链表的节点插入)4、快慢
双指针
爱学习的鱼佬
·
2024-02-14 02:57
算法沉淀
算法
链表
leetcode
代码随想录算法训练营第8天|● 344.反转字符串● 541. 反转字符串II● 卡码网:54.替换数字● 151.翻转字符串里的单词● 卡码网:55.右旋转字符串
344.反转字符串思路:利用
双指针
进行字符串反转,i,j指数组头和尾,i,j下标指向元素两两交换,不断内缩,i也控制交换趟数。
strive340
·
2024-02-13 20:08
算法
数据结构
双指针
练习题移动零
283.移动零1.题目要求:给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。示例1:输入:nums=[0,1,0,3,12]输出:[1,3,12,0,0]示例2:输入:nums=[0]输出:[0]提示:1current:当前的dest=>destination:目的地两个指针的作用:cur:从左往右扫描数组
fly in the sky !
·
2024-02-13 19:47
#
双指针
算法
java
学习方法
程序人生
面试
java数据结构与算法刷题-----LeetCode344. 反转字符串
所以可以采用
双指针
,left指向左边,
殷丿grd_志鹏
·
2024-02-13 18:57
算法
java
leetcode
算法
力扣算法训练_两数之和
题目思路:最开始想的是用
双指针
一个向右一个向左遍历,结果代码超时,如图:转变思路,不仅可以利用
双指针
,还可以用map集合中的键值对来解决问题,这里阐述几个关键方法,containinsKey()如果集合中有指定的值
为你千千万万遍的哈桑
·
2024-02-13 16:53
算法
java
Equalize(思维+
双指针
)
可以用
双指针
去实现。代码#include#defineintlonglong#definerep(i,a,b)for(i
wa的一声哭了
·
2024-02-13 15:31
codeforces
算法
c++
mybatis
django
java
spring
boot
spring
leetcode链表类型题目整理(一)
文章目录题目1:删除中间节点题目2:反转链表方法1、
双指针
使箭头反向方法2、递归法(待补充)用于记录在leetcode上处理链表问题时遇到的困难或是verynice的处理技巧。
工藤旧一
·
2024-02-13 12:40
#
leecode
基础算法(蓝桥杯)--无敌的
双指针
B站视频链接:A18
双指针
(尺取法)_哔哩哔哩_bilibili
双指针
算法:1、题目:输入一串字符串(有空格),输出用空格隔开的每段字符串.例:输入abcdefgh输出:abcdefgh#includeusingnamespacestd
仁公智能
·
2024-02-13 11:18
算法
算法
蓝桥杯
数据结构
输出链表中倒数第k个结点(
双指针
)(Java实现)
题目:输入一个链表,输出该链表中倒数第k个结点。示例:输入:1,{1,2,3,4,5}复制返回值:{5}思路:解法一:找规律1.有关找结点的问题,要考虑链表中结点数不够的情况,即没有结点可找,返回null。2.求出结点个数,再根据k值决定向后跳几步1->2->3->4->5k=3,size=5,要跳2步。1->2->3->4->5k=1,size=5,要跳4步。总结出:x=size-k代码://求
AJIUZ
·
2024-02-13 11:52
数据结构
链表
数据结构
剑指 Offer II 021. 删除链表的倒数第 n 个结点
概要
双指针
向右走,右指针走到头,用左指针处理倒数第n个节点题目给定一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。
小白码上飞
·
2024-02-13 11:21
剑指offer刷题笔记
链表
数据结构
算法
删除链表的倒数第N个结点(
双指针
法)
题目链接:19.删除链表的倒数第N个结点思路:本题为
双指针
的经典应用,如果要删除倒数第n个结点,则先让fast移动n步,然后同时移动fast和slow,直至fast指向链表的最后一个结点,此时slow-
鹤 鸣
·
2024-02-13 11:21
leetcode刷题笔记
链表
算法
数据结构
删除链表的倒数第 N 个结点(
双指针
法)
给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。示例1:输入:head=[1,2,3,4,5],n=2输出:[1,2,3,5]示例2:输入:head=[1],n=1输出:[]示例3:输入:head=[1,2],n=1输出:[1]提示:链表中结点的数目为sz10){fast=fast.next;}ListNodetemp=null;while(fast!=null){temp=slow
夏日暖阳628
·
2024-02-13 11:21
java
排序算法
算法
链表相交_
双指针
法_java
链表相交leetcode链接问题描述给你两个单链表的头节点headA和headB,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回null。解题思路遍历链表A,B,确定链表A,B长度。令指向更长链表的指针为快指针,另一个为慢指针快指针先行n步(n为链表A,B的长度之差)同时移动快慢指针若两个指针指向了相同结点则返回该结点否则返回空指针代码实现/***Definitionforsi
xiaoAi 123
·
2024-02-13 11:20
leetcode
链表
java
leetcode
算法
删除链表的倒数第 N 个结点 Java
双指针
法
题目描述给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。示例1:输入:head=[1,2,3,4,5],n=2输出:[1,2,3,5]示例2:输入:head=[1],n=1输出:[]示例3:输入:head=[1,2],n=1输出:[1]提示:链表中结点的数目为sz10&&pre!=null){pre=pre.next;}//前后指针同时遍历,直到前指针达到终点while(pre!=n
一陸向北
·
2024-02-13 11:19
#
链表
LeetCode思路分享
链表
java
数据结构
链表-删除链表的倒数第N个节点(
双指针
法)
题目https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list/给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?示例1:19.删除链表的倒数第N个节点输入:head=[1,2,3,4,5],n=2输出:[1,2,3,5]示例2:输入:head=[1],n=1输出:[]示例3:输入
蓦然回首却已人去楼空
·
2024-02-13 11:48
java数据结构与算法
链表
数据结构
leetcode
删除链表的倒数第 n 个结点(
双指针
法)
这个题力扣官方的
双指针
法添加了一个哑节点作为头节点,其实也可以不用那样建立新节点再删除。/***Definitionforsingly-lin
曦樂~
·
2024-02-13 11:48
每日一学
链表
数据结构
删除链表的倒数第 N 个结点(java、
双指针
法)
1,2,3,4,5],n=2输出:[1,2,3,5]示例2:输入:head=[1],n=1输出:[]示例3:输入:head=[1,2],n=1输出:[1]LeetCode-题目地址代码随想录-题目解析思路这题使用
双指针
法的思路
一天无聊
·
2024-02-13 11:17
每日一题
java
leetcode
算法
Leetcode题库 19.删除链表的倒数第N个结点(
双指针
法 C实现)
文章目录解析思路代码解析临时结构体t指向head的前一个结点p0指针指向被删除结点的前一个结点p1指针遍历链表flag表示p0与p1指针的相对距离思路使用p1遍历链表,p1移动一次flag自加1当flag>n时,p0同步移动此时p1领先p0(n+1)个身位,保证了p0指向倒数第n个数据结点的前一个结点遍历完成后第n个数据结点的前结点p0指向第n个数据结点的后结点,完成在链表中删除第n个数据结点的操
柳家山头号矿工
·
2024-02-13 11:17
Leetcode刷题集
链表
指针
LeetCode 19 删除链表的倒数第N个结点
双指针
法 链表 虚拟头结点
题目链接给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。>示例2:输入:head=[1],n=1输出:[]示例3:输入:head=[1,2],n=1输出:[1]提示:链表中结点的数目为sz1next;while(head!=nullptr){//head一直往前走,直到到达空结点head=head->next;del_node=del_node->next;}//由于del_node
RPG_Zero
·
2024-02-13 11:47
蒟蒻的自我救赎之路
LeetCode
C++
链表
链表
leetcode
数据结构
牛客BM9-删除链表的倒数第n个结点-C++
一、题目二、思路使用
双指针
法,指针pre指向新创建的头结点,p初始指向链表原首结点,先让p向后走n-1步,这时pre和p之间相隔n个结点,然后pre和p同步后移,当p指向链尾结点时,pre指向的是被删除结点的前驱结点
TLJava^v^
·
2024-02-13 11:46
#
牛客-C++
数据结构
c++
牛客
链表
删除
倒数第n个
删除链表中倒数第n个结点_
双指针
法_java
删除链表中倒数第n个结点leetcode链接问题描述给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。你能尝试使用一趟扫描实现吗?提示:链表中结点的数目为sz1<=sz<=300<=Node.val<=1001<=n<=sz测试用例示例1:输入:head=[1,2,3,4,5],n=2输出:[1,2,3,5]示例2:输入:head=[1],n=1输出:[]示例3:输入:head=[1,
xiaoAi 123
·
2024-02-13 11:45
链表
java
算法
leetcode
双指针
_贪心_1921_D. Very Different Array
#includeusingnamespacestd;constintN=2e5+10;inta[N],b[N];boolflag[N];voidsolve(){intn,m;cin>>n>>m;for(inti=0;i>a[i];for(inti=0;i>b[i];sort(a,a+n);sort(b,b+m);//for(inti=0;iy&&i=0&&flag[j]==false)//{//f
三冬四夏会不会有点漫长
·
2024-02-13 05:37
#
1100
算法
c++
数据结构
第十二周学习报告
比赛参加了一场div2,B题,C题没写出来,B是一个排序去重+
双指针
,C题是要观察出一个数学结论(因为数据范围太大,我暴力做直接超时了)排6253,表现分是998,938->996自己之后训练的重点就是前面
三冬四夏会不会有点漫长
·
2024-02-13 05:37
#
算法训练周报
学习
算法
【数据结构】03
双指针
示例1:输入:s=[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]设置
双指针
,i指首,j指尾voidreverseString(char*s,intsSize)
abutu999
·
2024-02-13 01:13
C\C++
数据结构
【数据结构】07
双指针
技巧
Q1:环形链表给你一个链表的头节点head,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。注意:pos不作为参数进行传递。仅仅是为了标识链表的实际情况。如果链表中存在环,则返回true。否则,返回false。示例1:输入:head=[3,2,0,-4]
abutu999
·
2024-02-13 01:13
数据结构
C\C++
数据结构
2020年6月 leetcode每日一题 C语言版本
顺时针打印矩阵6最长连续序列哈希并查集7等式方程的可满足性并查集8把数字翻译成字符串动态规划9回文数转化为数组反转一半数字厉害10回文链表翻转链表+快慢指针翻转链表11每日温度暴力超时暴力不超时单调栈12四数之和
双指针
Churkina_洛
·
2024-02-13 01:42
【上分日记】第380场周赛(数位dp+ KMP + 位运算 + 二分 +
双指针
)
文章目录前言正文1.3005.最大频率元素计数2.3007.价值和小于等于K的最大数字3.3008.找出数组中的美丽下标II总结尾序前言 本场周赛,博主也只写出两道题(前两道,hhh菜鸡勿喷),第三道涉及位运算,数位dp,第四道涉及KMP。下面我们来总结一下这四道题。正文1.3005.最大频率元素计数 这道题不难,不过有一个比较妙的写法,因此还是来分析总结一下。题目链接:最大频率元素计数题目思路:
舜华丶
·
2024-02-13 00:32
上分日记
KMP
数位dp
位运算
二分
双指针
第380周赛
分类讨论
345. Reverse Vowels of a String(反转字符串中的元音字母)
问题分析不要被题目迷惑了,题意是将元音字符提取出来,然后按照原因字符组成的新串将原串中的元音字符对换位置,我们可以采用
双指针
的方法一个指针从左向右、一个指针从右向左,遇见两个都是元音,且左指针在右指针的左边就进行对换
apprentice_eye
·
2024-02-12 15:51
leetcode刷题日记
算法
开发语言
刷题
数据结构
OI入门算法详解:含大量优质习题及题解!
文章目录单调队列单调栈拓展:区间问题的另一个常见解法——
双指针
优先队列链表分治ST表单调队列P2698题目描述,给定一些矩形,有横坐标x,高度h求一个最小的窗口,可以使得有一个窗口中的最大高度减最小高度
准确、系统、简洁地讲算法
·
2024-02-12 15:10
算法
数据结构
Day62 验证回文串
将空字符串定义为有效的回文串示例1:输入:"Aman,aplan,acanal:Panama"输出:true示例2:输入:"raceacar"输出:falseJava解法思路:这个属于很基础的题,使用
双指针
左右同时遍历即可
Shimmer_
·
2024-02-12 13:42
2/7 算法每日N题(二分+
双指针
)
第一题:classSolution{public:intsearch(vector&nums,inttarget){intleft=0,right=nums.size()-1;while(lefttarget){right=mid-1;}else{left=mid+1;}}return-1;}};第一题没什么细节,用笔在纸上画一下模拟一下即可第二题:这一道题相对其他题比较抽象,具体体现在其最后一个
自身就是太阳
·
2024-02-12 13:30
算法
leetcode
数据结构
删除链表的倒数第 N 个结点(中等)
双指针
structListNode*removeNthFromEnd(structListNode*head,intn){structListNode*dummyHead=(structListNode*)malloc(sizeof(structListNode));dummyHead->next=head;structListNode*slow=dummyHead,*fast=dummyHead;fo
Python ml
·
2024-02-12 10:56
LeetCode
链表
数据结构
[leetcode经典算法题]删除有序数组中的重复项(
双指针
)
删除有序数组中的重复项给你一个非严格递增排列的数组nums,请你原地删除重复出现的元素,使每个元素只出现一次,返回删除后数组的新长度。元素的相对顺序应该保持一致。然后返回nums中唯一元素的个数。考虑nums的唯一元素的数量为k,你需要做以下事情确保你的题解可以被通过:更改数组nums,使nums的前k个元素包含唯一元素,并按照它们最初在nums中出现的顺序排列。nums的其余元素与nums的大小
Rain_ZZX
·
2024-02-12 07:23
leetcode
算法
leetcode
数据结构
剑指offer编程题—和为S的两个数字
解题思路因为给定的数组是递增有序的,所以这里可以使用
双指针
技术,两个指针分别指向数组的首和尾,求解过程中两个指针分别向中间移动,具体操作步骤如下:初始化指针lp和rp分别指向数组的首和尾;如果array
零岁的我
·
2024-02-12 04:01
day2-数组part02| 977.有序数组的平方、 209.长度最小的子数组、 59.螺旋矩阵II
977.有序数组的平方思路数组平方后的最大值只可能在数组两端,不可能在中间设置
双指针
,比较两个指针所指值的大小,记录较大值,接着向中间移动这个指针结束条件:左右指针相背classSolution{public
dugindeep
·
2024-02-12 03:50
算法
leetcode
LeetCode Hot100 15.三数之和
文章目录题目描述回溯法(解不了,超时了,参考下剪枝)
双指针
循环题目描述给你一个整数数组nums,判断是否存在三元组[nums[i],nums[j],nums[k]]满足i!=j、i!=k且j!
Daydreaming Kid
·
2024-02-11 16:27
Leetcode刷题之路
leetcode
算法
深度优先
Java排序算法题-00
冒泡直接插入、冒泡、基数、归并,这四个排序是稳定的
双指针
第一次遍历,查询有几个基数第二次遍历,第一个指针先动到目标位置,第二个指针在头上。根据要求放置。https://github.com/Cy
柠檬树LeTr
·
2024-02-11 16:53
算法题目总结
目前只写了部分的贪心算法,动态规划,模拟,
双指针
,暴力枚举,栈,BFS,DFS,队列等算法题解,后期有时间的话会在b站上录一期关于算法的视频给大家参考。
hand2some2
·
2024-02-11 15:01
算法解析
算法
学习方法
数据结构
python
算法学习——LeetCode力扣
双指针
篇
算法学习——LeetCode力扣
双指针
篇127.移除元素27.移除元素-力扣(LeetCode)描述给你一个数组nums和一个值val,你需要原地移除所有数值等于val的元素,并返回移除后数组的新长度。
拉依达不拉胯
·
2024-02-11 08:27
LeetCode算法学习
算法
学习
leetcode
c++
c语言
【算法与数据结构】算法与数据结构知识点
文章目录一、算法和数据结构和LeetCode介绍二、算法和数据结构入门2.1时间复杂度2.2空间复杂度2.3基础排序算法2.3.1选择排序算法2.3.2冒泡排序算法三、数组3.1二分法查找法3.2
双指针
法四
晚安66
·
2024-02-11 07:52
算法
算法
寒假8
双指针
,BFS,图论
#include#includeusingnamespacestd;intn,d,k;intconstN=1000010;typedefpairpii;boolst[N];intcnt[N];piilogs[N];intmain(){cin>>n>>d>>k;for(inti=1;i>logs[i].first>>logs[i].second;}sort(logs+1,logs+1+n);for(
要成为编程高手的Yu
·
2024-02-11 06:23
宽度优先
算法
基础算法(排序,二分,高精度加减乘除,前缀和与差分,离散化,位运算,
双指针
等)介绍
基础算法文章目录基础算法排序快速排序归并排序二分算法整数二分浮点数二分高精度加减乘除高精度加法高精度减法高精度乘法高精度除法前缀和与差分一维前缀和二维前缀和一维差分二维差分
双指针
算法位运算离散化区间合并代码模板排序快速排序时间复杂度为
赵英英俊
·
2024-02-11 05:02
算法总结
算法
c++
数据结构
Acwing算法基础1——快排 归并 二分 前缀和 差分
双指针
位运算 离散化 区间和
文章目录1、快排----分治2、归并——分治3、二分法4、高精度(C++)5、前缀和(一维、二维)6、差分(一维、二维)7、
双指针
算法8、位运算9、离散化10、区间和流程:1.理解思想,背模板2.刷题目
倩mys
·
2024-02-11 05:31
数据结构与算法
算法
数据结构
java
常用代码模板1——基础算法——排序 二分 高精度 前缀和与差分
双指针
算法 位运算 离散化 区间合并
排序二分高精度前缀和与差分
双指针
算法位运算离散化区间合并快速排序算法模板——模板题AcWing785.快速排序voidquick_sort(intq[],intl,intr){if(l>=r)return
結城
·
2024-02-11 05:31
c++
一、基础算法之排序、二分、高精度、前缀和与差分、
双指针
算法、位运算、离散化、区间合并内容。
1.快速排序算法思想:选择基准元素,比基准元素小的放左边,比基准元素大的放右边。每趟至少一个元素排好。每一趟实现步骤:low>=high,返回,排序完成选取基准元素x=a[low],i=low,j=high当iusingnamespacestd;constintN=100010;intn;intq[N];voidquick_sort(inta[],intlow,inthigh){if(low>=h
樱花的浪漫
·
2024-02-11 05:00
C++与算法题系列
算法
数据结构
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他