链表中倒数第K个结点

Posted octopus-22

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了链表中倒数第K个结点相关的知识,希望对你有一定的参考价值。

题目描述

输入一个链表,输出该链表中倒数第k个结点。
 
 1 /*
 2 public class ListNode {
 3     int val;
 4     ListNode next = null;
 5 
 6     ListNode(int val) {
 7         this.val = val;
 8     }
 9 }*/
10 public class Solution {
11 
12 
13 public ListNode FindKthToTail(ListNode head,int k) {
14         if(head==null||k<=0){
15             return null;
16         }
17         ListNode pre=head;
18         ListNode last=head;       
19         for(int i=1;i<k;i++){
20             if(pre.next!=null){
21                 pre=pre.next;
22             }else{
23                 return null;
24             }
25         }
26         while(pre.next!=null){
27             pre = pre.next;
28             last=last.next;
29         }
30         return last;
31     }
32 }

 

以上是关于链表中倒数第K个结点的主要内容,如果未能解决你的问题,请参考以下文章

剑指 14. 代码的鲁棒性链表中倒数第k个结点

链表中倒数第k个结点

高质量代码-链表中倒数第k个结点

剑指offer:链表中倒数第k个结点

链表中倒数第k个结点-剑指Offer

链表中倒数第k个结点