力扣每日一题61:旋转链表
题目描述:
给你一个链表的头节点 head ,旋转链表,将链表每个节点向右移动 k 个位置。
示例 1:

输入:head = [1,2,3,4,5], k = 2 输出:[4,5,1,2,3]
示例 2:

输入:head = [0,1,2], k = 4 输出:[2,0,1]
提示:
- 链表中节点的数目在范围
[0, 500]内 -100 <= Node.val <= 1000 <= k <= 2 * 109
通过次数
339.4K
提交次数
821.1K
通过率
41.3%
思路一、值交换
先遍历一次链表,将每个节点的地址放入一个指针数组,每个节点的值放入一个int数组,并记录长度n。因为链表每向后移动n个位置,又回到了起点,所以k先对n取余,减去不比较的重复操作。随后再遍历一次链表,将位置为i的值改为位置为(i+n-k)%n 的值。
//值交换
class Solution {
public:ListNode* rotateRight(ListNode* head, int k) {if(head==NULL) return head;if(k==0) return head;ListNode *ptr[501];int a[501];int n=0;//节点数ListNode *p=head;while(p!=NULL){a[n]=p->val;ptr[n]=p;p=p->next;n++;}k=k%n;int i=0;for(i=0;i<n;i++){int index=(i+n-k)%n;ptr[i]->val=a[index];}return head;}
};
思路二、闭合为环,头结点向后移动n-k%n次即可。
将链表首尾相接,头结点向后移动n-k%n次,再将head前面的指针断开,就达到了向后移动k个位置的效果。
//闭合为环
class Solution {
public:ListNode* rotateRight(ListNode* head, int k) {if(head==NULL||k==0||head->next==NULL) return head;int n=1;ListNode *p=head;while(p->next!=NULL){p=p->next;n++;}int add=n-k%n;if(add==n) return head;p->next=head;//首尾相连while(add--){head=head->next;p=p->next;}p->next=NULL;return head;}
};
相关文章:
力扣每日一题61:旋转链表
题目描述: 给你一个链表的头节点 head ,旋转链表,将链表每个节点向右移动 k 个位置。 示例 1: 输入:head [1,2,3,4,5], k 2 输出:[4,5,1,2,3]示例 2: 输入:head [0,1,2], k 4 输…...
SSM - Springboot - MyBatis-Plus 全栈体系(三十六)
第八章 项目实战 四、后台功能开发 3. 头条模块开发 3.1 登陆验证和保护 3.1.1 需求描述 客户端在进入发布页前、发布新闻前、进入修改页前、修改前、删除新闻前先向服务端发送请求携带 token 请求头后端接收 token 请求头后,校验用户登录是否过期并做响应前端根…...
作为开发的我能力模型图是什么样子的,应该如何去绘制?
作为开发的我能力模型图是什么样子的,应该如何去绘制? 能力模型图是一种用来描述个人或职位所需技能和能力的工具,对于开发人员来说,能力模型图通常包括技术能力、软技能和专业知识等多个维度。下面是一种可能的构建和绘制开发人员…...
【会议征稿通知】第三届密码学、网络安全和通信技术国际会议(CNSCT 2024)
第三届密码学、网络安全和通信技术国际会议(CNSCT 2024) 2024 3rd International Conference on Cryptography, Network Security and Communication Technology 随着互联网和网络应用的不断发展,网络安全在计算机科学中的地位越来越重要&…...
Python学习笔记——MYSQL,SQL核心
食用说明:本笔记适用于有一定编程基础的伙伴们。希望有助于各位! SQL语言分类 SQL注释 库管理 表管理 数据操作 分组聚合 分页限制 需要注意的是关键字的顺序不可以错乱,否则会报错其中LIMIT关键字的n是指从第n个开始,m是指查…...
集成学习方法之随机森林-入门
1、 什么是集成学习方法 集成学习通过建立几个模型组合的来解决单一预测问题。它的工作原理是生成多个分类器/模型,各自独立地学习和作出预测。这些预测最后结合成组合预测,因此优于任何一个单分类的做出预测。 2、 什么是随机森林 在机器学习中&…...
blender怎么在一个面上对半切割(不影响别的面)
1进入编辑模式 2.在面选择模式下,选中该物体需要切割成两半的面。 3.按K这个快捷键(切记,必须得用快捷键,不用的话没办法调出第一个绿色切割点),将切割点移动到需要切割的起始边,按住Shift键不放…...
vue3中使用vue3-pdf-app和使用浏览器内置的PDF插件浏览器PDF文件
文章目录 先准备一个PDF使用浏览器内置的PDF插件预览PDF在HTML中使用浏览器插件预览PDFVscode使用插件发布服务后直接通过URL地址访问PDF可使用的浏览器 在vue3项目中预览PDF文件vue3项目也是可以通过URL地址访问文件的vue3中使用浏览器内置的PDF插件预览PDF代码如下所示&#…...
fastadmin 后台添加视频
做个记录,字段自行对照解决 1.add.html <div class"form-group"><label class"control-label col-xs-12 col-sm-2">{:__(Video)}:</label><div class"col-xs-12 col-sm-8"><div class"input-group">&l…...
TFHE 的全同态模结构(FHE Module Structure)
参考文献: [CGGI20] Chillotti I, Gama N, Georgieva M, et al. TFHE: fast fully homomorphic encryption over the torus[J]. Journal of Cryptology, 2020, 33(1): 34-91.[BGGJ20] Boura C, Gama N, Georgieva M, et al. Chimera: Combining ring-lwe-based ful…...
rapidocr_paddle[gpu]:GPU端推理库来了
简介 rapidocr_paddle系列包是基于PaddlePaddle框架作为推理引擎的,支持CPU和GPU上推理。值得说明的是,这个包和PaddleOCR相比,代码基本都是一样的,只不过这个库将里面核心推理代码抽了出来,更加精简而已。 推荐GPU上…...
PKU 概率论+数理统计+建模 期中考复习总结
目录 计算条件概率计算概率(放回与不放回)生成随机数算法Linear Congruential Method判断是否是full period Uniformity (test of frequency)1.Chi-Square testmethodreminderexample 2.Kolmogorov-Sminov testmethodexample Independence (test of auto…...
Kubernetes技术与架构-网络 3
Kubernetes集群支持为Pod或者Service申请IPV4或者IPV6的地址空间。 kube-apiserver --service-cluster-ip-range<IPv4 CIDR>,<IPv6 CIDR> kube-controller-manager --cluster-cidr<IPv4 CIDR>,<IPv6 CIDR> --service-cluster-ip-range<IPv4 CI…...
pycharm转移缓存目录
原来的缓存目录为C:\Users\86176\AppData\Local\JetBrains,各种配置文件、缓存文件随着pycharm的使用堆积在这里,导致C盘逐渐爆满。 因此需要将缓存目录转移至D盘。首先需要了解缓存目录的知识。 PyCharm 和其他 JetBrains 的 IDE 通常会有两个关键的目…...
python 2组list绘制拟合曲线、计算拟合方程 R^2
import matplotlib.pyplot as plt import numpy as np # plt.rcParams[font.family] SimHei # 指定使用中文字体,例如宋体(SimHei)def Curve_Fitting(x, y, deg):parameter np.polyfit(x, y, deg) #拟合deg次多项式p np.poly1d(paramet…...
Vue单页面应用(SPA)怎么做SEO
在Vue单页面应用(SPA)中,由于内容的动态加载和路由切换,搜索引擎可能无法直接获取和索引页面的内容。不过,你可以采取一些策略来优化SEO,使你的Vue单页面应用在搜索引擎中更好地被索引和展示: 1:使用预渲染(Prerendering)或服务器端渲染(Server-Side Rendering,SS…...
简述【关系型数据库】
“关系型数据库”是博主在复习时做题遇到的知识点,用于简单扫盲 关系型数据库简称RDBMS,是依据关系模型来创建的数据库所谓“关系模型”就是“一对一、一对多、多对多”等关系模型。关系模型就是指二维表格模型,因而一个关系型数据库就是由二…...
LVS之DR模式(最常见的LVS负载方式,直接路由模式)
一、LVS-DR模式的数据流向 1、负载均衡器lvs调度器:只负责请求和转发到后端的真实服务器,但是响应结果,由后端服务器直接转发给客户端,不需要经过调度器的处理,减轻lvs调度器的负担,提高性能和稳定性 二、…...
006:vue使用lottie-web实现web动画
文章目录 1. 简介2. 优点3. 效果4. 安装使用5. lottie-web 常用方法6. Lottie-web 常用的事件 1. 简介 官方介绍:Lottie 是一个库,可以解析使用AE制作的动画(需要用bodymovie导出为json格式),支持web、ios、android、flutter和re…...
Java NIO
Java NIO 一,介绍 Java NIO(New IO)是 JDK 1.4 引入的一组新的 I/O API,用于支持非阻塞式 I/O 操作。相比传统的 Java IO API,NIO 提供了更快、更灵活的 I/O 操作方式,可以用于构建高性能网络应用程序。 …...
Mi-Create:小米手表表盘设计的终极免费工具完整指南
Mi-Create:小米手表表盘设计的终极免费工具完整指南 【免费下载链接】Mi-Create Unofficial watchface creator for Xiaomi wearables ~2021 and above 项目地址: https://gitcode.com/gh_mirrors/mi/Mi-Create 还在为小米手表找不到心仪表盘而烦恼吗&#x…...
JPEXS Free Flash Decompiler架构集成与系统对接实施指南
JPEXS Free Flash Decompiler架构集成与系统对接实施指南 【免费下载链接】jpexs-decompiler JPEXS Free Flash Decompiler 项目地址: https://gitcode.com/gh_mirrors/jp/jpexs-decompiler JPEXS Free Flash Decompiler(FFDec)作为业界领先的Fla…...
010、AI硬件复兴:从NPU到专用芯片的创业路径
010、AI硬件复兴:从NPU到专用芯片的创业路径 文章目录010、AI硬件复兴:从NPU到专用芯片的创业路径一、从一次深夜调试说起二、NPU的“夹层生存”现状三、专用芯片的“场景深潜”四、创业路径上的四个暗礁五、给务实主义者的建议六、写在最后一、从一次深…...
“听劝!”预算1k内吉他别瞎买:雅马哈/布洛克/费森横评,这款单板琴让我惊掉下巴!
准备买第一把吉他了,是不是既兴奋又有点慌?面对琳琅满目的品牌和从几百到几千的价格,心里直打鼓: 太便宜的是不是“烧火棍”?太贵了又怕自己坚持不下去浪费钱。 更怕的是,花了钱买回家,发现声音…...
Kandinsky-5.0-I2V-Lite-5s从零部署:JDK1.8环境下的Java客户端开发
Kandinsky-5.0-I2V-Lite-5s从零部署:JDK1.8环境下的Java客户端开发 1. 引言 还在用JDK1.8开发企业级应用?想集成最新的Kandinsky-5.0-I2V-Lite-5s图像转视频模型却担心兼容性问题?这篇教程就是为你准备的。我们将从零开始,手把手…...
intv_ai_mk11行业落地案例:教育内容总结、电商文案生成、开发需求转代码
intv_ai_mk11行业落地案例:教育内容总结、电商文案生成、开发需求转代码 1. 教育内容总结应用实践 1.1 教育场景痛点分析 教育工作者经常面临海量教学资料的整理和提炼工作。传统人工总结方式存在效率低下、主观性强、格式不统一等问题。以某在线教育平台为例&am…...
等保测评知多少?等保测评规定几年做一次
等保测评知多少?等保测评规定几年做一次 随着网络信息技术的快速发展,为了进一步规范对网站的管理,国家要求商家及企业进行等保测评。那等保测评是什么意思?下面,就跟龙翊信安一起来看看吧。 一、等保测评是什么含义 等…...
基于SDMatte的Java后台服务构建:高并发图片处理架构设计
基于SDMatte的Java后台服务构建:高并发图片处理架构设计 1. 为什么需要专业级图片处理服务 电商平台每天要处理数十万张商品图片,其中背景抠图是最耗时的环节之一。传统方案要么依赖Photoshop手动操作,要么使用开源工具但效果参差不齐。我们…...
AMD Ryzen SDT调试工具:5分钟掌握处理器深度调优的完整指南
AMD Ryzen SDT调试工具:5分钟掌握处理器深度调优的完整指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https…...
Qwen-Image工程化实践:用npm scripts一键搞定模型权重下载
Qwen-Image工程化实践:用npm scripts一键搞定模型权重下载 1. 为什么需要自动化下载模型权重 在AI图像生成和编辑领域,模型权重文件往往是项目运行的关键依赖。以Qwen-Image为例,这个由阿里云通义千问团队开发的图像生成模型,其…...
