题目:
是否自己写出来:是
解题思路:这题和昨天的876.链表的中间节点很像,观察完题目发现返回k下标其实和计数器count有关所以我们只需要,利用计数器遍历链表记录链表里面数据的个数,然后再写个函数实现就行了
其他解题思路:通过学习别人的解题思路了解到还可以用到快慢指针来做,快慢指针都指向头结点,然后让快指针先走k步,然后让快指针与慢指针同时走,如果快指针为空则结束循环
解题代码:
class Solution {public int kthToLast(ListNode head, int k) {int num=count(head);return findnum(head,num-k);}public int count(ListNode head){int count=0;ListNode cur = head;while(cur!=null){cur=cur.next;count++;}return count;}public int findnum(ListNode head,int count){ListNode cur = head;while(count>0){cur=cur.next;count--;}return cur.val;}
}