Leetcode每日一题:面试题02.02.kth-node-from-end-of-list-lcci(返回倒数第k个节点)

在这里插入图片描述
思路:典型得快慢指针问题,快指针与慢指针中间隔着k-2个节点,那么同时++快慢指针,当快指针指向链表结尾节点时,慢指针指向倒数第k个节点;
在这里插入图片描述

struct ListNode
{
    
    
	int val;
	ListNode *next;
	ListNode(int x) : val(x), next(NULL) {
    
    }
};

int kthToLast(ListNode *head, int k)
{
    
    
	ListNode *left = head, *right = head;
	int count = 1;
	while (count < k)
	{
    
    
		right = right->next;
		count++;
	}
	while (right->next)
	{
    
    
		left = left->next;
		right = right->next;
	}
	return left->val;
}

猜你喜欢

转载自blog.csdn.net/wyll19980812/article/details/108842200