一、题目内容
二、题解
解法1:
思路
双指针法
- 倒数第K个节点即为第n-k个节点
定义双指针,一个先走k步,另一再走,当第一个快速节点到达末尾时,慢节点走了n-k,即倒数第k
代码
/*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode(int x) { val = x; }* }*/class Solution {public ListNode getKthFromEnd(ListNode head, int k) {if (head == null) {return null;}ListNode fast = head, slow = head;for (int i = 0; i < k; i++) {fast = fast.next;}while (fast != null) {fast = fast.next;slow = slow.next;}return slow;}}
