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

力扣面试150 旋转链表 闭链成环

Problem: 61. 旋转链表
在这里插入图片描述

👨‍🏫 力扣官解

在这里插入图片描述

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode rotateRight(ListNode head, int k) {// 不用动 或 链表少于两个节点if(k == 0 || head == null || head.next == null){return head;}int n = 1;// 统计链表的元素个数ListNode iter = head;while(iter.next != null){iter = iter.next;n++;}int offset = n - (k % n);// 从头开始数 offset 个,链表断开if(offset == n){return head;}iter.next = head;// 闭链成环// 把 iter 移到第 offset 个节点while(offset-- > 0){iter = iter.next;}ListNode res = iter.next;iter.next = null;// 断环归链return res;}
}

http://www.mrgr.cn/news/19144.html

相关文章:

  • ChatTCP:一款离线TCP数据包分析macOS APP,致力于让分析TCP数据包像看聊天记录一样简单
  • 如何在 Linux Terminal 中使用 Cmd+C复制,Cmd+V粘帖?
  • Docker入门学习-01
  • vue3页面空白-普通函数和箭头函数提升的不同
  • Windows使用ffmpeg获取麦克风数据
  • 激光雷达产品介绍
  • MySQL备份:备份策略、物理备份、mysqldump备份、增量备份、差异备份
  • DeFi是否还存在Alpha机会?Pencils Protocol 带领市场“向前看”
  • 深入理解 Prometheus 数据模型与指标监控
  • MATLAB eig 函数简介:计算特征值和特征向量
  • VS2022使用指定的LLVM版本
  • Linux C++ 开发7 - GDB常用命令汇总(你想了解的都在这)
  • 【算法专场】模拟(上)
  • C++复习day02
  • 专业文件搜索工具 | UltraSearch Pro v4.4.1.1015 绿色特别版
  • 字典树Trie(专项复习)
  • 【C++ Primer Plus习题】10.2
  • 我克隆了我自己,数字生命有什么意义?
  • 数据结构:顺序表的应用--仓库货物管理信息管理系统
  • 9.3总结