给出一个链表如下图:
要求:删除倒数第K个结点
分析如下:
1.我们可以先遍历一遍链表,求出链表的长度,然后从头结点开始向后走(len-K)步,但是此方法需要遍历两遍链表
2.利用快慢指针法,快指针先走K步,然后快指针和慢指针同时向后走,当快指针为空时,慢指针所指的位置就是所要找的位置。
代码如下:
Node* List::find_Penultimate_K(Node* Head,int k)
{
if(Head==N
给出一个链表如下图:
要求:删除倒数第K个结点
分析如下:
1.我们可以先遍历一遍链表,求出链表的长度,然后从头结点开始向后走(len-K)步,但是此方法需要遍历两遍链表
2.利用快慢指针法,快指针先走K步,然后快指针和慢指针同时向后走,当快指针为空时,慢指针所指的位置就是所要找的位置。
代码如下:
Node* List::find_Penultimate_K(Node* Head,int k)
{
if(Head==N