当前位置: 首页 > news >正文

[leetcode] 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 <= 100
  • 0 <= k <= 2 * 109

Python实现

把链表连接成一个换,然后需要找到规律(n-k)%n即环形链表需要断开的位置,如果能找到这个规律就能写出来了。

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:def rotateRight(self, head: Optional[ListNode], k: int) -> Optional[ListNode]:if not head or not head.next:return headn=1cur = headwhile cur.next:cur = cur.nextn+=1k = (n-k)%ncur.next = headwhile k:cur = cur.next k-=1res = cur.nextcur.next = Nonereturn res

相关文章:

  • Laravel 数据库:判断数据表是否存在
  • Linux安装nginx保姆级教程
  • 中国象棋AI在线对弈游戏源码
  • 如何快速学会互联网运营?2分钟教会你实战3步核心流程!
  • BOM系统:贯穿制造全程的管理利器
  • 【御控物联】JavaScript JSON结构转换(8):数组To数组——多层属性重组
  • Java线程池详细解释
  • 软考中级(网络工程师考核要点)第一章 计算机网络系统(信道特性应用)第六期(4B/5B编码、数字调制技术和脉冲编码调制)
  • 通俗易懂:MySQL中如何用SQL语句模拟栈或队列的操作?
  • 16进制的字符串转byte[]数组 以及将字节数组转换成十六进制的字符串
  • Linux实战笔记(六) SSH
  • 如何根据黄金行情进行交易操作?
  • 信息安全技术基础知识总结
  • java ssh 电影院购票管理系统eclipse开发mysql数据库MVC模式java编程网页设计
  • 互联网轻量级框架整合之JavaEE基础II
  • 【Leetcode】101. 对称二叉树
  • [rust! #004] [译] Rust 的内置 Traits, 使用场景, 方式, 和原因
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • CentOS7简单部署NFS
  • JavaScript 一些 DOM 的知识点
  • JavaScript对象详解
  • JavaWeb(学习笔记二)
  • JDK 6和JDK 7中的substring()方法
  • JS函数式编程 数组部分风格 ES6版
  • js面向对象
  • JS专题之继承
  • Lucene解析 - 基本概念
  • 基于HAProxy的高性能缓存服务器nuster
  • 开发基于以太坊智能合约的DApp
  • 来,膜拜下android roadmap,强大的执行力
  • 手写一个CommonJS打包工具(一)
  • 推荐一个React的管理后台框架
  • 一起来学SpringBoot | 第三篇:SpringBoot日志配置
  • Java总结 - String - 这篇请使劲喷我
  • scrapy中间件源码分析及常用中间件大全
  • 阿里云服务器如何修改远程端口?
  • 不要一棍子打翻所有黑盒模型,其实可以让它们发挥作用 ...
  • 回归生活:清理微信公众号
  • ​2020 年大前端技术趋势解读
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • #pragma预处理命令
  • (C语言)球球大作战
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (七)c52学习之旅-中断
  • (三) prometheus + grafana + alertmanager 配置Redis监控
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (一)硬件制作--从零开始自制linux掌上电脑(F1C200S) <嵌入式项目>
  • (转)ORM
  • (转载)跟我一起学习VIM - The Life Changing Editor
  • .Net 6.0 处理跨域的方式
  • .net framework profiles /.net framework 配置
  • .NET Micro Framework初体验(二)
  • .net 开发怎么实现前后端分离_前后端分离:分离式开发和一体式发布
  • .net经典笔试题