欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。

程序员文章站 2022-04-08 16:47:23
...

/**

  • Definition for singly-linked list.
  • public class ListNode {
  • int val;
    
  • ListNode next;
    
  • ListNode(int x) { val = x; }
    
  • }
    */
    class Solution {
    public int kthToLast(ListNode head, int k) {
    ListNode fnode = head;
    ListNode snode = head;
    //快慢指针,先让快的走k-1步
    for(int i = 0;i<k-1;i++){
    fnode = fnode.next;
    }
    //然后一块走,直到快的走到最后一步
    while(fnode.next!=null){
    snode = snode.next;
    fnode = fnode.next;
    }
    return snode.val;
    }
    }