Summary

Two pointers:

在处理数组和链表相关问题时,双指针技巧是经常用到的,双指针技巧主要分为两类:左右指针快慢指针

  • 左右指针,就是两个指针相向而行或者相背而行;

  • 快慢指针,就是两个指针同向而行,一快一慢。

对于单链表来说,大部分技巧都属于快慢指针,单链表的六大解题套路 都涵盖了,比如链表环判断,倒数第 K 个链表节点等问题,它们都是通过一个 fast 快指针和一个 slow 慢指针配合完成任务。

在数组中并没有真正意义上的指针,但我们可以把索引当做数组中的指针.

LinkedList:

Two Pointer Strategy:

1、合并两个有序链表

2、链表的分解

3、合并 k 个有序链表

4、寻找单链表的倒数第 k 个节点: 快慢指针

5、寻找单链表的中点: 快慢指针

6、判断单链表是否包含环并找出环起点: 快慢指针

7、判断两个单链表是否相交并找出交点: 快慢指针

8、删除链表里面的重复元素: 链表分解。

Last updated

Was this helpful?