当前位置: 首页 > 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.jsqmd.com/news/7673/

相关文章:

  • 【任务】自然语言处理——情感分析 <上>
  • 2025华为 OD 机试2025C卷 机考真题库清单(全真题库)含考点说明(OD上机考试2025年C卷) - 教程
  • QOJ #8147. Math Exam 题解
  • 10.03模拟赛t3
  • 国庆梦熊集训做题记录
  • 完整教程:缓存总线是什么?
  • 兰博平台: 星云抽卡豪华版. 作者acc177
  • 打工人日报#20250927 - 教程
  • GPT-5 撼动量子计算:AI 在科研领域的颠覆性应用 - 实践
  • python 肘部法则,判点聚类分为几类,K-means聚类分析
  • AT_abc315_f [ABC315F] Shortcuts
  • 紫外UV固化太阳光模拟器的原理 - 教程
  • 《系统与软件工程功能规模测量IFPUG手段》(GB/T42449-2023)标准解读
  • 实用指南:无人机图传及组网功能如何实现?适用频段与传输模块选择全攻略
  • 每日一题
  • P5709 【深基2.习6】Apples Prologue / 苹果和虫子
  • 问题表 - microsoft
  • KD论文阅读 - 实践
  • Leetcode 736. Lisp 语法解析
  • Day10.1
  • 随想八
  • 【600】
  • SolarWinds Web Help Desk远程代码执行漏洞分析
  • Aria2安装
  • 正则表达式学习
  • 神经网络之简单的标量何以表达模型的拟合能力 - 指南
  • 一篇文章入门RabbitMQ:基本概念与Java利用
  • PHP程序员要是基础不扎实,越学越吃力
  • lesson70:jQuery Ajax完全指南:从基础到4.0新特性及现代替代优秀的方案引言:jQuery Ajax的时代价值与演进
  • 《电路基础》第八章学习笔记