![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
双指针
双指针类型的算法
zhuiguang3494
这个作者很懒,什么都没留下…
展开
-
142. 环形链表 II Medium
Leetcode笔记目录142. 环形链表 II MediumLeetcode笔记目录一、题目描述二、解题过程1.思想2.代码三、总结一、题目描述给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意,pos 仅仅是用于标识环的情况,并不会作为参数传递到函数中。说明:不允许修改给定的链表。示例1:输入: head =原创 2020-10-25 21:52:12 · 57 阅读 · 0 评论 -
167. 两数之和 II - 输入有序数组 Easy
Leetcode笔记目录167. 两数之和 II - 输入有序数组 EasyLeetcode笔记目录一、题目描述二、解题过程1.思想2.代码三、总结一、题目描述给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。说明:返回的下标值(index1 和 index2)不是从零开始的。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例1:输入:原创 2020-10-25 20:32:22 · 99 阅读 · 0 评论 -
340.至多包含 K 个不同字符的最长子串 hard
Leetcode笔记目录340.至多包含 K 个不同字符的最长子串 hardLeetcode笔记目录一、题目描述二、解题过程1.思想三、总结一、题目描述参考别的大佬的题解.二、解题过程1.思想双指针的滑动窗口,其过程为右端点移动得到一个满足条件区间,然后左端点移动得到第一个不满足条件区间,然后右端点再移动,这样循环直到遍历一遍。三、总结与76. 最小覆盖子串一样的解题思路,但要注意细节比如判断条件加不加等号,距离计算是否加1。...原创 2020-10-24 19:39:17 · 357 阅读 · 0 评论 -
76. 最小覆盖子串 hard
Leetcode笔记目录76. 最小覆盖子串 hardLeetcode笔记目录一、题目描述二、解题过程1.思想2.代码三、总结一、题目描述给你一个字符串 S、一个字符串 T 。请你设计一种算法,可以在 O(n) 的时间复杂度内,从字符串 S 里面找出:包含 T 所有字符的最小子串.示例1:输入: S = “ADOBECODEBANC”, T = “ABC”输出: “BANC”二、解题过程1.思想双指针的滑动窗口问题,其过程为右端点移动得到一个满足条件区间,然后左端点移动得到第一个不原创 2020-10-24 18:05:13 · 95 阅读 · 0 评论 -
524. 通过删除字母匹配到字典里最长单词 Medium
Leetcode笔记目录135. 分发糖果 hardLeetcode笔记目录一、题目描述二、解题过程1.思想2.代码三、总结一、题目描述给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。示例1:输入: s = “abpcplea”, d = [“ale”,“apple”,“monkey”,“plea”]输出: “apple”示例2:输入: s原创 2020-10-23 15:18:29 · 102 阅读 · 0 评论 -
680. 验证回文字符串 Ⅱ Easy
Leetcode笔记目录680. 验证回文字符串 Ⅱ EasyLeetcode笔记目录一、题目描述二、解题过程1.思想2.代码三、总结一、题目描述给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。示例1:输入: “aba”输出: True示例2:输入: “abca”输出: True解释: 你可以删除c字符。二、解题过程1.思想双指针的变形题,但不是一直循环到i与j相遇,而是符合条件后直接进行处理。2.代码bool issym(string s,i原创 2020-10-23 10:56:11 · 90 阅读 · 0 评论 -
633. 平方数之和 Easy
Leetcode笔记目录633. 平方数之和 EasyLeetcode笔记目录一、题目描述二、解题过程1.思想2.代码三、总结一、题目描述给定一个非负整数 c ,你要判断是否存在两个整数 a 和 b,使得 a2 + b2 = c。示例1:输入: c = 5输出: true解释: 1 * 1 + 2 * 2 = 5。示例2:输入: c = 3输出: false提示: 0 <= c <= 2^31-1二、解题过程1.思想双指针的变形题目,注意i指针和j指针是可原创 2020-10-22 22:53:30 · 80 阅读 · 0 评论 -
88. 合并两个有序数组 Easy
Leetcode笔记目录88. 合并两个有序数组 EasyLeetcode笔记目录一、题目描述二、解题过程1.思想2.代码三、总结一、题目描述给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。示例:输入:nums1 = [1,2原创 2020-10-21 09:18:01 · 80 阅读 · 0 评论