【双指针】leetcode 剑指offer 22:链表正倒数第k个结点

鲸鱼优化算法(WOA)与门控循环单元(GRU)结合的预测模型(WOA-GRU)及其Python和MATLAB实现 Python和MATLAB的实现均突出模型结构和优化过程。2. **全局搜索与局部搜索结合**:WOA在寻优时,既有全局搜索的能力,又具备局部精准搜索的能力,能有效避免陷入局部最优解。2. **简化结构**:与长短期记忆(LSTM)相比,GRU的结构更为简化,避免了多层细胞结构,提高了计算效率。4. **使用WOA进行优化**:通过WOA迭代优化GRU模型中的参数,如学习率、批量大小和GRU单元的权重。3. **良好的表现**:GRU在多个时序数据序列的预测任务中表现优异,特别是在较短的数据序列中。 阅读详情

题目描述:
输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。
例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6。这个链表的倒数第 3 个节点是值为 4 的节点。
示例1:
给定一个链表: 1->2->3->4->5, 和 k = 2.
返回链表 4->5.
思路1:
使用一个dict记录每个节点是第几个然后返回即可,但是时间复杂度较高。

# Definition for singly-linked list.
class ListNode:
    def __init__(self, x):
        self.val = x
        self.next = None

class Solution:
    def getKthFromEnd(self, head: ListNode, k: int) -> ListNode:
        d = dict()
        count = 1
        if not head:
            return head
        cur = head
        while cur:
            d[count] = cur
            cur = cur.next
            count += 1
        if k <= count:
            return d[count-k]
        else:
            return head

思路2:单指针
先遍历统计链表长度,记为 n ;
设置一个指针走 (n-k)步,即可找到链表倒数第 k个节点。
思路3:
在这里插入图片描述
在这里插入图片描述

# Definition for singly-linked list.
# class ListNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution(object):
    def getKthFromEnd(self, head, k):
        """
        :type head: ListNode
        :type k: int
        :rtype: ListNode
        """
        former, later = head, head
        for _ in range(k):
            former = former.next
        while former:
            former = former.next
            later = later.next
        return later
Horn-Schunck光流算法的Python实现 光流是计算机视觉领域中的一个重要概念,它描述了图像中物体在时间上的运动。Horn-Schunck光流算法是一种经典的光流估计方法,通过对图像的亮度变化进行建模,来估计像素的运动速度。在本文中,我们将使用Python实现Horn-Schunck光流算法,并提供相应的源代码。请注意,该算法假设图像上的亮度变化主要由物体的运动引起,并且假设光流在整个图像上是稠密的。在上面的示例中,我们首先读取了两个输入图像,然后使用我们实现的Horn-Schunck光流算法估计了它们之间的光流。首先,我们需要导入一些必要的库。 阅读详情

相关推荐

Origin 2025b中文版安装全指南:避开乱码、水印与崩溃陷阱

Origin作为科研绘图领域的事实标准,其2025b版本首次官方支持简体中文UI,但安装远非‘下一步’即可完成。核心在于理解软件本体、语言包、许可证服务与系统区域设置四者间的耦合关系——尤其Windows非Unicode程序语言必须设为‘中文(简体,中国)’,否则必然触发坐标轴乱码、PDF文字方块等典型故障;而AI辅助拟合、内置Python 3.11等新特性,又依赖正确的字体链(如SimSun)与注册表强制加载(UILanguage=zh-CN)才能稳定启用。该版本广泛应用于材料科学、电化学、XRD/SEM

weixin_42548874的博客 1409

剑指 Offer 22. 链表中倒数第k个节点 - 力扣(LeetCode)

剑指 Offer 22. 链表中倒数第k个节点 - 力扣(LeetCode)

Onwaier的博客 498

当OTN网络遭遇LOS告警:5个运维老手才知道的故障定位技巧(含CA动作对照表)

本文深入解析OTN网络中LOS告警的实战定位技巧,涵盖光功率深度诊断、模块差异分析及核心的CA动作机制。通过逆向追踪告警流与对照速查表,帮助运维人员快速锁定故障段落,区分硬软故障,并掌握系统健康度评估方法,从而提升排障效率与网络稳定性。

weixin_29266007的博客 552

LeetCode-剑指 Offer 22. 链表中倒数第k个节点(Goland实现)

LeetCode题号:剑指 Offer 22. 链表中倒数第k个节点 问题描述: 输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是值为4的节点。 示例: 给定一个链表: 1->2->3->4->5, 和 k = 2. 返回链表 4->5. 思路:创建一个额外的数组存储链表...

**My Coding Family** 635

14、Java 中 TAF 和 FCF 的使用及 Oracle 数据库升级与迁移指南

本文详细介绍了Java中实现高可用性的TAF(透明应用故障转移)和FCF(快速连接故障转移)技术,以及如何将Oracle 9iR2 RAC环境升级到10gR2 RAC,并将数据从OCFS迁移到ASM。通过示例代码和操作步骤,帮助开发者和数据库管理员更好地应对数据库故障和数据迁移问题,提升系统的可用性和性能。

egg99的博客 110

MIT液态神经网络(LNN)深度研究:原理、应用与未来

液态神经网络(Liquid Neural Networks, LNNs)代表了人工智能领域,特别是神经网络架构设计中的一次范式转移。它从根本上挑战了传统深度学习模型依赖大规模参数和静态架构的惯例,转而寻求一种更为动态、高效且受生物神经系统启发的计算范式。LNN的核心创新在于其将神经网络的计算过程从离散的、基于时间步的更新,转变为连续的、由微分方程驱动的动态系统演化。这种转变不仅赋予了模型前所未有的适应性和鲁棒性,还使其在处理复杂的时序数据和因果推断任务时表现出色。本章节将深入剖析LNN的技术原理,从其核心的

步子哥的博客 2590

【剑指offer】 面试题22 链表中倒数第k个结点

题目要求 输入一个链表,输出该链表中倒数第k个结点。 解题分析 我们可以用两次遍历解决问题,第一次遍历是统计链表中的节点个数,第二次找到倒数第k个点。但是这样需要我们两次遍历链表,通常情况下,面试官需要我们一次遍历解决问题,所以有没有更好的方法? 这时候我们需要两个指针同时完成任务,第一个指针从头遍历k-1步同时第二个指针不动,从第k步开始,两个指针同时遍历,直到第一个指针到达尾部,第二个指针刚好...

爱喝舒化奶的博客 338

拆解全球18大“支付清算”体系:CLS、中国、美国、欧洲、日本、mBridge...

拆解全球18大“支付清算”体系:CLS、中国、美国、欧洲、日本、mBridge...

银行信息系统应用架构详解 884

LeetCode【剑指offer】系列(链表篇)

搜集《剑指offer》在Leetcode上对应的题目,给出题目链接和题解

永远相信美好的事情即将发生 1130

复旦微FMSH_Procise安装流程

双击FMSH_Procise_2021.1_full_win64_202103151947.exe 选择好安装目录后点击“Next” 一路next 点install 找技术支持代为申请 License,将电脑MAC地址发过去,将获得的 license 拷贝到 procise 安装目录“data”文件夹,即可使用 procise。点license manager和copy license 将licence,.lic文件放到这个目录 要是报下面错误要...

wangjie36的博客 1万+

AgentScope Java 2.0 项目实战:从零构建企业级自主Coding Agent

本文基于 AgentScope Java 框架,完整拆解两个生产级 AI Agent 项目的从零开发全过程。其一是企业级自主编码机器人(agentscope-codingagent),支持 Issue→PR 自动实现、PR Code Review、Docker 沙箱隔离执行与多通道接入;其二是个人 AI 助手管理平台(agentscope-paw),采用 Spring Boot + React 全栈架构,支持多 Agent、技能市场与多 IM 通道。

program哲学 839

剑指 Offer 22. 链表中倒数第k个节点

剑指 Offer 22. 链表中倒数第k个节点 链接:https://leetcode-cn.com/problems/lian-biao-zhong-dao-shu-di-kge-jie-dian-lcof/ 设置双指针,后面一个指针找到第k个结点之后,前面的一个指针开始移动,直至后面的直至达到链表末尾的时候,前面的指针就刚好在链表的倒数第k个结点的位置 # Definition for singly-linked list. # class ListNode: # def __ini

breeze_blows的博客 227

Yolo11改进:Block改进|MixDehazeNet,用于图像去雾网络的混合结构块|即插即用|附代码

https://arxiv.org/pdf/2305.17654 图像去雾是低级视觉领域中的一项典型任务。先前的研究验证了大型卷积核和注意力机制在去雾中的有效性。然而,存在两个缺点:引入大型卷积核时容易忽略图像的多尺度特性,而注意力模块的标准串联方式没有充分考虑雾分布的不均匀性。在本文中,我们提出了一种名为混合结构图像去雾网络(MixDehazeNet)的新型框架,该框架解决了上述两个问题。具体而言,它主要由两部分组成:多尺度并行大型卷积核模块和增强并行注意力模块。与单个大型卷积核相比,多尺度的并行大型卷积

m0_47867638的博客 1273

LeetCode刷题——剑指offer中链表题目汇总

剑指offer链表题目汇总: 剑指 Offer 06. 从尾到头打印链表(简单) 剑指 Offer 18. 删除链表的节点 剑指 Offer 22. 链表中倒数第k个节点 剑指 Offer 24. 反转链表(简单) 剑指 Offer 25. 合并两个排序的链表(简单) 剑指 Offer 35. 复杂链表的复制(中等) 剑指 Offer 52. 两个链表的第一个公共节点(简单)

艾醒的博客 795

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

LeetCode 12: 剑指 Offer 22. 链表中倒数第k个节点 (简单); 19. 删除链表的倒数第 N 个结点 (中等); 160. 相交链表(简单)

文章目录T10: 剑指 Offer 22. 链表中倒数第k个节点 (简单)网址思路解法 1: 双指针易错点:T11: 19. 删除链表的倒数第 N 个结点 (中等)网址思路解法 1: 双指针易错点:T12: 160. 相交链表(简单)网址思路解法 1: 哈希集合易错点: T10: 剑指 Offer 22. 链表中倒数第k个节点 (简单) 网址 https://leetcode-cn.com/problems/lian-biao-zhong-dao-shu-di-kge-jie-dian-lcof 输入一个链

无知小九的博客 144

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

《剑指Offer》解题目录(更新完毕)

题目来源于LeetCode上的《剑指Offer》,这里做一个目录方便大家查找。另外有本人的LeetCode解题目录、《程序员面试金典》可点击链接查看。

Michael是个半路程序员 6160

剑指 Offer——22:链表中倒数第k个节点

该题目和以下两个题的解题思路相似: 剑指 Offer——18:删除链表的节点 LeetCode19:删除链表的倒数第N个节点 目录 一、题目 二、示例 三、思想 四、代码 一、题目 输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是值为4的节点。 二、示例 示例: 给定一个链表: 1->2->3-&g

D77的博客 254

【leetcode】剑指 Offer 22. 链表中倒数第 k 个节点

剑指 Offer 22. 链表中倒数第 k 个节点题目难度:简单方法一 链接:https://leetcode-cn.com/problems/lian-biao-zhong-dao-shu-di-kge-jie-dian-lcof/ 来源:力扣(LeetCode) 题目难度:简单 输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。 例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6。这个链表的倒数第 3

一个写湿的程序猿 368

【leetcode刷题之路】剑指Offer(1)——字符串+链表+双指针

利用双指针,定义pa和pb分别指向A和B的头节点,这里判断是否相交采用了一个非常有意思的方法,假设A和B相交节点前各有skipA和skipB个节点,而相交节点数为C,pa和pb同时开始遍历,如果pa遍历完了就指向headB,同理pb,那么到最后总会遍历相同次数,对于A:skipA+C+skipB,对于B:skipB+C+skipA,如果此时的节点一样的话,说明相交,否则说明都遍历到了各自的最后节点仍不相交,返回空指针。判断当前l1和l2的大小,如果l1较小,就从l1往后连接,并返回l1,同理l2。

要像蜗牛一样一步一步往上爬! 5943

剑指Offer LeetCode 面试题22. 链表中倒数第k个节点

剑指Offer LeetCode 面试题22. 链表中倒数第k个节点

TrueDei 1279

力扣 剑指offer中链表题解法思路总结

力扣 剑指offer 链表 思路总结 双指针 递归 迭代

Aquaman_的博客 419

【LeetCode-剑指Offer】22. 链表中倒数第k个节点

一、题目 二、解决 1、 思路: 代码: 时间复杂度: O(n)O(n)O(n) 空间复杂度: O(n)O(n)O(n) 2、 思路: 代码: 时间复杂度: O(n)O(n)O(n) 空间复杂度: O(n)O(n)O(n) 3、 思路: 代码: 时间复杂度: O(n)O(n)O(n) 空间复杂度: O(n)O(n)O(n) 三、参考 1、 2、 3、 ...

HeavenDan的博客 293

Leetcode刷题:剑指offer【面试题22 链表中倒数第k个节点】

文章目录思路:双指针 【面试题22 链表中倒数第k个节点】 难度: 简单 输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是值为4的节点。 Leetcode题目对应位置: 面试题22:链表中倒数第k个节点 思路:双指针 常规解法是先遍历一遍单链表,求得链表长度,此时就能得到倒数第 k 个节点位置。再次遍历单链表,从计算出的输出位置进行打印即

学习 & 分享 ~ 373

剑指 Offer 22. 链表中倒数第k个节点 - leetcode 剑指offer系列

题目难度: 简单 原题链接 今天继续更新剑指 offer 系列, 这道题很经典, 也有多种方法, 这里提供三种做法帮助大家拓展思路 老样子晚上 6 点 45 分准时更新公众号 每日精选算法题, 大家记得关注哦~ 另外在公众号里回复 offer 就能看到剑指 offer 系列当前连载的所有文章了 题目描述 输入一个链表,输出该链表中倒数第 k 个节点。为了符合大多数人的习惯,本题从 1 开始计数,即链表的尾节点是倒数第 1 个节点。例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1.

随便发挥的博客 247

【剑指offer之链表】链表类型所有题总结

文章目录概述剑指 Offer 06 从尾到头打印链表反转数组AC代码剑指 Offer 22 链表中倒数第k个节点双指针算法AC代码剑指 Offer 24 反转链表反转链表AC代码剑指 Offer 18 删除链表的节点删除节点AC代码剑指 Offer 35 复制链表的复制找规律AC代码剑指 Offer 52 两个链表的第一个公共节点距离归纳法AC代码 概述 本篇文章记录剑指offer标签为链表的题。 下面的题都是在力扣上面做的,可以按照题名搜索即可 剑指 Offer 06 从尾到头打印链表 反转数组 将

Miiiiiiiiiii的博客 350

【leetcode C语言实现】剑指 Offer 22.链表中倒数第k个节点

题目描述 输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是值为4的节点。 示例: 给定一个链表: 1->2->3->4->5, 和 k = 2. 返回链表 4->5. 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/lian-biao-zhong-dao

sunshine_hanxx的博客 343

【吐血整理】LeetCode与剑指Offer百道经典题解总结

本文整理了LeetCode与剑指Offer中百余道经典的题目,整理出了数组、字符串、链表、二叉树、栈、回溯、动态规划、位运算中的经典问题以及问题对应的链接地址和个人提供的题解,方便查阅以及练习。以下是百题的索引,点击即可找到题目的出处并练习,也可直接查阅答案。 建议刚开始刷题的朋友直接按一下的Tag分类一个专题一个专题地进行学习与作答,完全理解这一百题,一线大厂非你莫属。

BoringError的博客 3893
上一篇: 【双指针】leetcode 剑指offer52:两个链表的第一个公共结点
下一篇: leetcode 剑指offer 45:把数组排成最小的数
coding_diamond
博客等级 码龄8年 8粉丝 131原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值