大家好,欢迎来阅读子豪的博客(LeetCode刷题篇)
大家有什么宝贵的意见或建议可以在留言区留言
如果你喜欢我的博客,欢迎 素质三连 点赞 关注 收藏
我的码云仓库:补集王子 (YZH_skr) - Gitee.com
目录
思路一:倒数第k个 就是顺数第n-k个
思路二:设置快慢指针
图表演示
其他问题
空指针问题
最终代码
始终记住图码结合
思路一:倒数第k个 就是顺数第n-k个但是得遍历两遍
思路二:设置快慢指针让快指针先走k个,然后再同时走,直到fast到NULL
图表演示fast走到空
其他问题 空指针问题如果他只给你一个链表,或者k大于了链表的长度
解决方法:判断下fast,然后返回空
最终代码struct ListNode* FindKthToTail(struct ListNode* pListHead, int k )
{
struct ListNode* slow,*fast;
slow = fast = pListHead;
while(k--)
{
if(fast==NULL)
{
return NULL;
}
fast=fast->next;
}
while(fast)
{
slow=slow->next;
fast=fast->next;
}
return slow;
}
始终记住图码结合
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)