面试题02.02.返回倒数第k个节点

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

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

示例:

复制代码
输入: 1->2->3->4->5 和 k = 2
输出: 4

说明:

给定的 k 保证是有效的。

题解:这道题很常见,用快慢指针就可以解决,小编就不赘述了,直接看代码

复制代码
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     struct ListNode *next;
 * };
 */
int kthToLast(struct ListNode* head, int k) {
    struct ListNode*fast=head;
    struct ListNode*slow=head;
    while(--k)
    {
        fast=fast->next;
    }
    while(fast->next!=NULL)
    {
        fast=fast->next;
        slow=slow->next;
    }
    return slow->val;
}
相关推荐
掘金安东尼10 小时前
让 JavaScript 更容易「善后」的新能力
前端·javascript·面试
掘金安东尼10 小时前
用 HTMX 为 React Data Grid 加速实时更新
前端·javascript·面试
灵感__idea12 小时前
Hello 算法:众里寻她千“百度”
前端·javascript·算法
UrbanJazzerati13 小时前
非常友好的Vue 3 生命周期详解
前端·面试
想用offer打牌20 小时前
高并发下如何保证接口的幂等性
后端·面试·状态机
Wect1 天前
LeetCode 130. 被围绕的区域:两种解法详解(BFS/DFS)
前端·算法·typescript
牛奶1 天前
Vue 基础理论 & API 使用
前端·vue.js·面试
牛奶1 天前
Vue 底层原理 & 新特性
前端·vue.js·面试
NAGNIP1 天前
一文搞懂深度学习中的通用逼近定理!
人工智能·算法·面试
青青家的小灰灰2 天前
深入理解事件循环:异步编程的基石
前端·javascript·面试