每日一题(链表中倒数第k个节点)
每日一题(链表中倒数第k个节点)
链表中倒数第k个结点_牛客网 (nowcoder.com)
思路:
如下图所示:此题仍然定义两个指针,fast指针和slow指针,假设链表的长度是5,k是3,那么倒数第3个节点就是值为3的节点。那么我们可以先让fast指针向后走k次,也就是3次。slow指针仍然指向头节点。
当fast向后走3步之后,如下图所示,此时再让slow指针和fast指针一起向后走,直到fast指针的值为空指针时,此时的slow指针就是倒数第k个指针。
注意:当链表不为空时,这里的fast指针最后的值一定会为空指针,与链表的节点个数的奇偶性无关。因为当fast先走k步之后,紧接着它就是一步一步的向后走。最后一定会为空指针。
- 当k的值大于链表的节点个数时,fast指针一定会提前成为空指针,此时直接返回空即可。
代码实现:
struct ListNode* fast = pListHead;
struct ListNode* slow = pListHead;
while(k--)
{//链表没有k步长if(!fast){return NULL;}fast = fast->next;
}while(fast)
{fast = fast->next;slow = slow->next;
}return slow;
完结
链表中倒数第k个节点的分析就到这里啦,若有不足,欢迎评论区指正,下期见!
相关文章:

每日一题(链表中倒数第k个节点)
每日一题(链表中倒数第k个节点) 链表中倒数第k个结点_牛客网 (nowcoder.com) 思路: 如下图所示:此题仍然定义两个指针,fast指针和slow指针,假设链表的长度是5,k是3,那么倒数第3个节点就是值为…...
python如何求两list的公共区域
如何求两list的公共区域 对于列表(List),要求它们的公共区域,你可以使用列表推导式和集合交集的方法来计算。具体步骤如下: list1 [1, 2, 3, 4, 5] list2 [3, 4, 5, 6, 7]# 使用列表推导式获取列表的交集 common_e…...
SpringMVC中文乱码(request或response)前后端处理
前端处理: JSP : <%page pageEncoding"utf-8" %> HTML : <meta charset"UTF-8">后端处理: GET请求(request)乱码处理: <!-- Tomcat的sever.xml中添加配置:URIEncod…...
Redis面试题大全含答案
1.什么是Redis? 答:Remote Dictionary Server(Redis)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 它通常被称为数据结构服务器,因为值(value&…...
stable diffusion实践操作-提示词-整体环境
系列文章目录 stable diffusion实践操作-提示词 文章目录 系列文章目录前言一、提示词汇总1.1 整体环境11.2 整体环境1 二 、总结 前言 本文主要收纳总结了提示词-整体环境。 一、提示词汇总 1.1 整体环境1 画质背景场景画风镜头[最高质量][透明背景][山][轮廓加深][正面视…...

Spring Aop--通知注解
一、环绕注解 环绕注解 环绕注解Aroud 注解描述AroundAround是Spring AOP中的一种通知类型,用于在目标方法执行前后进行环绕操作。它可以在方法调用前后增加额外的逻辑,例如日志记录、性能监控等。Around注解需要配合AspectJ表达式来指定切入点&#…...

说说CDN和负载均衡具体是怎么实现的
分析&回答 什么是 CDN CDN (全称 Content Delivery Network),即内容分发网络。 构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需…...

Leetcode107. 二叉树的层序遍历 II
力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 给你二叉树的根节点 root ,返回其节点值 自底向上的层序遍历 。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 输入:root [3,9…...

【广州华锐互动】VR党建多媒体互动展厅:随时随地开展党史教育
随着科技的不断发展,虚拟现实(VR)技术已经逐渐渗透到各个领域,其中党建教育尤为受益。为了更好地传承红色基因,弘扬党的优良传统,广州华锐互动推出了VR党建多媒体互动展厅,让广大党员干部和人民群众通过现代科技手段&a…...
libdrm全解析三十九 —— 源码全解析(36)
接前一篇文章:libdrm全解析三十八 —— 源码全解析(35) 本文参考以下博文: DRM 驱动程序开发(VKMS) 特此致谢! 前一篇文章讲解完了资源的释放流程中的drmModeRmFB(),本回讲解munma…...

【Interaction交互模块】AngularJointDrive角度关节驱动
文章目录 一、预设体位置二、案例:做一个“能开合的门” 1、在已建好的门框下,建门 2、设置参数 3、解决产生的问题 三、其它属性 一、预设体位置 交互模块——可控制物体——物理关节——角度关节驱动 二、案例:做一个“能…...
菜鸟教程《Python 3 教程》笔记 EX 01:命令行参数
菜鸟教程《Python 3 教程》笔记 EX 01:命令行参数 1 命令行参数1.1 基础用法1.2 getopt 模块1.2.1 getopt.getopt 方法1.2.2 getopt.gnu_getopt 方法1.2.3 Exception getopt.GetoptError1.2.4 exception getopt.error 笔记带有个人侧重点,不追求面面俱到…...
NLP(六十六)使用HuggingFace中的Trainer进行BERT模型微调
以往,我们在使用HuggingFace在训练BERT模型时,代码写得比较复杂,涉及到数据处理、token编码、模型编码、模型训练等步骤,从事NLP领域的人都有这种切身感受。事实上,HugggingFace中提供了datasets模块(数据处…...

Rabbitmq消息积压问题如何解决以及如何进行限流
一、增加处理能力 优化系统架构、增加服务器资源、采用负载均衡等手段,以提高系统的处理能力和并发处理能力。通过增加服务器数量或者优化代码,确保系统能够及时处理所有的消息。 二、异步处理 将消息的处理过程设计为异步执行,即接收到消息…...
Lambda方法引用
1、体验方法引用 在使用Lambda表达式的时候,我们实际上传递进去的代码就是一种解决方案:拿参数做操作那么考虑一种情况:如果我们在Lanbda中所指定的操作方案,已经有地方存在相同方案,那是否还有必要再重复逻辑呢&#…...

TCP协议报文
前言 TCP/IP协议簇——打开虚拟世界大门中,已经给大家大致介绍了TCP/IP协议簇的分层。 TCP (Transmission Control Protocol)传输控制协议,在TCP/IP协议簇中,处于传输层。是为了在不可靠的互联网络(IP协议)中&#x…...

C# 如何将使用的Dll嵌入到.exe应用程序中?
文章目录 前言详细实操简要步骤 前言 有没有想自己开发的exe保留一点神秘,不想让他人知道软件使用了哪些dll; 又或许是客户觉得一个软件里面的dll文件太多了,能不能简单一点,直接双击.exe就可以直接运行了,别搞那么多乱七八糟的。…...

【LeetCode】剑指 Offer Ⅱ 第5章:哈希表(6道题) -- Java Version
题库链接:https://leetcode.cn/problem-list/e8X3pBZi/ 类型题目解决方案哈希表的设计剑指 Offer II 030. 插入、删除和随机访问都是O(1) 的容器HashMap ArrayList ⭐剑指 Offer II 031. LRU 缓存HashMap 双向链表 ⭐哈希表的应用剑指 Offer II 032. 有效的变位…...

x86 汇编手册快速入门
本文翻译自:Guide to x86 Assembly 在阅读 Linux 源码之前,我们需要有一些 x86 汇编知识。本指南描述了 32 位 x86 汇编语言编程的基础知识,包括寄存器结构,数据表示,基本的操作指令(包括数据传送指令、逻…...
WPF C# Binding绑定不上的解决情况
Binding绑定不上的一般解决情况: 1.添加上下文 DataContext d:DataContext"{d:DesignInstance Typelocal:CommSettingView}"2.添加相对位置 RelativeSource Command"{Binding SaveCommand, RelativeSource{RelativeSource AncestorTypeUserContr…...

云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
工程地质软件市场:发展现状、趋势与策略建议
一、引言 在工程建设领域,准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具,正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

高危文件识别的常用算法:原理、应用与企业场景
高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...

微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...

Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...

蓝桥杯3498 01串的熵
问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798, 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...

Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...

面向无人机海岸带生态系统监测的语义分割基准数据集
描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...

Linux 中如何提取压缩文件 ?
Linux 是一种流行的开源操作系统,它提供了许多工具来管理、压缩和解压缩文件。压缩文件有助于节省存储空间,使数据传输更快。本指南将向您展示如何在 Linux 中提取不同类型的压缩文件。 1. Unpacking ZIP Files ZIP 文件是非常常见的,要在 …...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...