一般考虑到倒数第K个节点的链表题都可以通过快指针和慢指针来解决。
思路是快指针走了K个节点的时候,慢指针开始移动,它们之间距离始终为K。直到快指针走到头的时候,慢指针刚好就是倒数第K个节点。
只不过因为删除节点,还要考虑慢指针之前的一个节点,我们用pre来表示。pre一开始设置为null,假设删除的刚好是头节点,只需要判断一下pre的值是否为null,是null的话只要把head往后移动一个节点就能实现删除节点的功能。