程序员面试金典-面试题02.02-返回倒数第 k 个节点

程序员面试金典-面试题02.02-返回倒数第 k 个节点

这题同样是双指针,类似的有程序员面试金典-面试题02.01-移除重复节点

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

注意:本题相对原题稍作改动

示例:

输入: 1->2->3->4->5 和 k = 2
输出: 4
说明:

给定的 k 保证是有效的。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/kth-node-from-end-of-list-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     struct ListNode *next;
 * };
 */


int kthToLast(struct ListNode* head, int k){
    struct ListNode * ptr = head;
    struct ListNode * ptr_next = ptr;
    for(int i=0;i<k;i++)
    {
        ptr_next=ptr_next->next;
    }
    while(ptr_next != NULL)
    {
        ptr = ptr -> next;
        ptr_next = ptr_next -> next;
    }
    return ptr -> val;
}

你可能感兴趣的:(数据结构与算法_c语言描述,链表,c语言,面试,leetcode,算法)