文章目录
最强解析面试题:链表中倒数最后k个结点
文章讲解 “ 链表中倒数最后k个结点 ” 经典面试题,包含思路及源码,及解惑!
题目
输入一个长度为 n 的链表,设链表中的元素的值为 ai ,返回该链表中倒数第k个节点。
如果该链表长度小于k,请返回一个长度为 0 的链表。
代码
func FindKthToTail(pHead *ListNode, k int) *ListNode {
if pHead == nil || k <= 0 {
return nil
}
index := 0
tmp := &ListNode{}
tmp.Next = pHead
for pHead != nil {
index++
if index >= k {
tmp = tmp.Next
}
pHead = pHead.Next
}
if index < k {
tmp = nil
}
return tmp
}
附录
What you do is who you are !