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

LeetCode--25.k个一组翻转链表

解题思路:

        1.获取信息:

                (1)给定一个链表,每k个结点一组进行翻转

                (2)余下不足k个结点,则不进行交换

        2.分析题目:

                其实就是24题的变题,24题是两两一组进行交换,这一道题就是多个一组进行交换

        3.示例查验:

                示例1和示例2:都用图表明了多个一组怎么进行交换

        4.尝试编写代码:

                我看见这道题,构思了三种方法,但我目前只实现了一种构思,后续我会补上其他的方法的,放心吧

                这三种方法的核心思路都是一样的,或者说25题和24题的核心思路都是一样的,各个方法只是手法略有不同而已,手法好了,你可以叫做手法大师,哈哈

                所以我下面方法的名字就是按手法来命名的,所以就直接看代码注释,我就不一 一讲解了

                (1)辅助存储空间+迭代

                        以下是完整代码

class Solution {
public:ListNode* reverseKGroup(ListNode* head, int k) {stack<ListNode*>s;//辅助存储空间bool first=true;//是否是第一个组合ListNode*res;//结果链表的首元结点ListNode*temp;//存储上一组结点翻转后的最后一个结点while(head!=nullptr){s.push(head);head=head->next;if(s.size()==k){//如果储存够了一组if(first){res=s.top();first=false;}//如果是第一组,我们储存下结果链表的首元结点else{temp->next=s.top();//不是第一组,就连接上一组结点翻转后的最后一个结点和下一组结点翻转后的第一个结点}while(s.size()-1){//进行翻转操作ListNode*now=s.top();s.pop();now->next=s.top();}temp=s.top();//留下一个结点用于连接下一组结点翻转后的第一个结点temp->next=nullptr;//处理结点断开问题s.pop();}}if(s.size()){//处理冗余结点不足k个的情况,就保持它们原有的顺序,不进行翻转,直接进行连接while(s.size()!=1)s.pop();temp->next=s.top();}return res;}
};

下面的两种手法,我在努力地实现,你也可以尝试一下,看它们是否可行,到时候来这里对答案哦,算是磨练一下你咯,宝剑锋从磨砺出,梅花香自苦寒来嘛

                (2)使用辅助存储空间+递归

                (3)不使用辅助存储空间+递归

哈哈,今天又是偷懒的一天,之前21题,我说了后续会补上第三种方法,现在虽然还没有补上,但也快了,我打算好好学习一下运算符重构,也要点时间的,但我说会补,那就一定会补上的

好了,早睡,还是提一嘴,纸上得来终觉浅,绝知此事要躬行

相关文章:

  • DAY 48 随机函数与广播机制
  • JavaScript 的意义
  • 知名的WordPress模板团队
  • c++ std::pair
  • vmware 设置 dns
  • Elasticsearch 常用操作命令整合 (cURL 版本)
  • 鸿蒙API自翻译
  • 从碳基羊驼到硅基LLaMA:开源大模型家族的生物隐喻与技术进化全景
  • Ollama部署下载Qwen3-Embedding(含0.6B、4B、8B等)向量模型和Qwen3-Reranker(含0.6B、4B、8B等)重排模型的方法
  • 【RAG召回】BM25算法示例
  • 智慧城市项目总体建设方案(Word700页+)
  • 楠溪江诗意传承:李文照笔下的山水印记
  • leetcode_56 合并区间
  • 十一.C++ 类 -- 面向对象思想
  • day50 随机函数与广播机制
  • 【西门子杯工业嵌入式-6-ADC采样基础】
  • CMake基础:gcc/g++编译选项详解
  • 结合三维基因建模与智能体技术打造工业软件无码平台
  • 2025-06-08-深度学习网络介绍(语义分割,实例分割,目标检测)
  • 什么是 Ansible 主机和组变量
  • 做公司网站的费用计入什么科目/世界比分榜
  • 河南网站建设找哪家/国际实时新闻
  • 网站建设龙卡要审批多久时间/如何做网络销售产品
  • webstorm wordpress/seo优化教学视频
  • 上海优化网站 优帮云/网站关键词优化排名软件系统
  • 安徽工程建设信息网站/软文云