思路:
快慢指针
快指针先走k步,快慢一起走,快指针到链表末尾,慢指针指向倒数第k个结点
public class Solution {
public ListNode FindKthToTail(ListNode head,int k) {
if(head==null || k<=0)
return null;
ListNode fast=head;
ListNode slow=head;
while(k>1)
{
k--;
if(fast.next!=null)
fast=fast.next;
else
return null;
}
while(fast.next!=null)
{
fast=fast.next;
slow=slow.next;
}
return slow;
}
}
本文介绍了一种使用快慢指针技巧查找链表中倒数第K个节点的方法。通过先让快指针前进K步,然后与慢指针同步移动,当快指针到达链表末尾时,慢指针恰好指向目标节点。
514

被折叠的 条评论
为什么被折叠?



