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

K个节点的组内逆序调整

题目

给定一个单链表的头节点head,和一个正数k实现k个节点的小组内部逆序,如果最后一组不够k个就不调整
例子:
调整前:1->2->3->4->5->6->7->8,k=3
调整后:3->2->1->6->5->4->7->8

tips:功能拆分:获取当前组的结尾节点、反转、拼接

  • 定义链表
"""单链表"""  
class ListNode:  def __init__(self, value):  self.next = Noneself.val = value
  • 获取当前组的结尾节点
def get_end(node, k):  while k > 1 and node:  node = node.next  k -= 1  return node
  • 反转
def reverse(start, end):  end = end.next  prev = None  cur = start  while cur != end:  next = cur.next  cur.next = prev  prev = cur  cur = next  start.next = end
  • 拼接
def reverse_all(head, k):  start = head  end = get_end(head, k)  if end is None:  return head  head = end  reverse(start, end)  last_end = start  while last_end.next:  start = last_end.next  end = get_end(start, k)  if end is None:  return head  reverse(start, end)  last_end.next = end  last_end = start  return head
http://www.gsyq.cn/news/15257.html

相关文章:

  • 2025华为 OD 机试2025C卷 机考真题库清单(全真题库)含考点说明(OD上机考试2025年C卷) - 教程
  • 10.03模拟赛t3
  • 打工人日报#20250927 - 教程
  • GPT-5 撼动量子计算:AI 在科研领域的颠覆性应用 - 实践
  • python 肘部法则,判点聚类分为几类,K-means聚类分析
  • 《系统与软件工程功能规模测量IFPUG手段》(GB/T42449-2023)标准解读
  • lesson70:jQuery Ajax完全指南:从基础到4.0新特性及现代替代优秀的方案引言:jQuery Ajax的时代价值与演进
  • 详细介绍:计算机视觉:OpenCV+Dlib 人脸检测
  • 详细介绍:Jenkins:持续集成和持续交付(CI/CD)工具
  • 和水导学习的第二篇笔记
  • 百度电商MultiAgent视频生成系统 - 详解
  • 为博客写遗言
  • 新能源汽车整车电控环境详解!
  • 《吃透 C++ vector:从基础使用到核心接口实战指南》 - 指南
  • 黑马程序员苍穹外卖学习指南(本文消除我跟视频做该项目时遇到的问题和解决方法)
  • 网络流 费用流 EK算法
  • Python 新手入门:从零开始学习 Python 的 10 个关键步骤
  • EPL S22 Stage 2 赛前前瞻
  • 实用指南:Guava Cache
  • 计算机类毕业设计开题报告注意事项 - 教程
  • 微信社群机器人搭建 教程/开发
  • 微信智能机器人开发-基于WTAPI框架,实现强大的个微管理
  • Kafka 安全SASL 认证全栈实战从 JAAS 到 Kerberos、PLAIN、SCRAM、OAUTH 与委托令牌 - 教程
  • glibc堆
  • 小作业 11
  • US$948 WOYO UC009 Ultrasonic Cutter for Cutting Plastic
  • 深入解析:【RabbitMQ】原理解析
  • 2025年电子设备行业最受欢迎的5款CRM推荐
  • AT_abc266_g [ABC266G] Yet Another RGB Sequence
  • 深入解析:Visual RM 用智能引擎重塑企业协作新模式!