No13、(链表)

来源:互联网 发布:sql server2000 编辑:程序博客网 时间:2024/06/07 15:10

题目:输入一个单向链表,输出该链表中倒数第 k 个结点。链表的倒数第 0 个结点为链表的尾指针。


解题思路:


1>遍历链表的长度为len,那么倒数第k个节点就是正数的第len-k+1个节点..再遍历一遍即可

时间复杂度是O(len)


2>两个指针p1,p2,p1指向头结点,p2向后移动k个位置,指向正数第k个位置;然后p1、p2同时向后移动,当p2到达最后一个节点,p1所指的位置就是倒数第k个节点..

时间复杂度也是O(len)