Kosmos Kosmos

---我们总得选择一条路去前行---

目录
Leetcode之双指针
/  

Leetcode之双指针

友情提示: 代码在这里
本文参照该仓库学习,大家可以star

双指针主要用于遍历数组,两个指针指向不同的元素,从而协同完成任务。

有序数组的 Two Sum

题目描述:在有序数组中找出两个数,使它们的和为 target。

使用双指针,一个指针指向值较小的元素,一个指针指向值较大的元素。指向较小元素的指针从头向尾遍历,指向较大元素的指针从尾向头遍历。

如果两个指针指向元素的和 sum == target,那么得到要求的结果;
如果 sum > target,移动较大的元素,使 sum 变小一些;
如果 sum < target,移动较小的元素,使 sum 变大一些。

两数平方和

题目描述:判断一个数是否为两个数的平方和。

反转字符串中的元音字符

编写一个函数,以字符串作为输入,反转该字符串中的元音字母。

使用双指针指向待反转的两个元音字符,一个指针从头向尾遍历,一个指针从尾到头遍历。

回文字符串

给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。

我本来想着使用前后移动的非递归,但是有cupoopucu这个出错了-.- 然后被这个挡住了 然后就是超时警告(哭了)

归并两个有序数组

需要从尾开始遍历,否则在 nums1 上归并得到的值会覆盖还未进行归并比较的值。

判断链表是否存在环

使用双指针,一个指针每次移动一个节点,一个指针每次移动两个节点,如果存在环,那么这两个指针一定会相遇
(快慢指针)

通过删除字母匹配到字典里最长单词

给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。


今日诗词 标题:Leetcode之双指针
作者:ellenbboe
地址:https://ellenbboe.github.io/articles/2019/04/14/1561009686330.html