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

天猫是b2b电子商务网站吗网络推广培训

天猫是b2b电子商务网站吗,网络推广培训,网站加入收藏 代码,做网站找外包公司要要搞清楚什么25. K 个一组翻转链表 - 力扣(LeetCode) 一、题目要求 给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍&#x…

25. K 个一组翻转链表 - 力扣(LeetCode)

一、题目要求

给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。

k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。

你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。

示例 1:

输入:head = [1,2,3,4,5], k = 2
输出:[2,1,4,3,5]

示例 2:

输入:head = [1,2,3,4,5], k = 3
输出:[3,2,1,4,5]

提示:

  • 链表中的节点数目为 n
  • 1 <= k <= n <= 5000
  • 0 <= Node.val <= 1000

进阶:你可以设计一个只用 O(1) 额外内存空间的算法解决此问题吗?

二、解法1-双层递归 O(N) 进阶

        这个题与翻转链表(每日一练:反转链表-CSDN博客)类似,但是它是分成了几个组分别进行反转,反转链表时我们使用递归来完成,这个题我们很容易想到把链表分层几部分分别递归,但是难点在于各个部分反转后还需要进行连接,这就又需要一层递归,即:

        先递归(外层递归)到最后一个要进行反转的部分,进行递归反转(内层递归)后,得到它的新头后返回上一层递归(外层递归);上一层递归是前一个要进行反转的部分,这部分又进行递归反转后将新尾连接到上一次返回的新头即可

        新头就是旧尾,要返回给调用它的上一次函数,也就是链表的前一部分。

        新尾就是旧头,我们可以在外层递归时保存这个节点,得到后一部分的新头后指向它。

        外层递归是为了以从后向前的顺序枚举到所有需要反转的组;

        内存递归就是为了翻转这些组;

class Solution {ListNode* __reverseKGroup(ListNode* last, ListNode* cur, int k) { // 内层递归if (k == K){cur->next = last;return cur;}ListNode* newhead = __reverseKGroup(cur, cur->next, k+1);cur->next = last;return newhead; // 返回新头}ListNode* _reverseKGroup(ListNode* cur, ListNode* head, int k) { // 外层递归if (cur == nullptr || cur->next==nullptr && k != K){return head;}if (k == K){ListNode* head_next = _reverseKGroup(cur->next, cur->next, 1); // 得到下一部分的新头以连接它ListNode* newhead = __reverseKGroup(head_next , head, 1); // 得到这部分的新头,并连接下部分的新头return newhead; // 返回这部分的新头给前一部分}return _reverseKGroup(cur->next, head, k+1);}
public:ListNode* reverseKGroup(ListNode* head, int k) {K = k;return _reverseKGroup(head, head,1);}
private:int K;
};

http://www.hengruixuexiao.com/news/6091.html

相关文章:

  • 苏州网站建设服务网站宣传
  • 邯郸做网站外包网络推广策划方案模板
  • 做网站后端的是什么部门广告投放方案
  • 做网站 怎么样找客户朋友圈广告代理商官网
  • 专门做视频点评的网站电商运营的基本内容
  • 做百度糯米网站的团队产品营销推广的方案
  • 微信小程序怎么删除廊坊seo
  • 清河网站建设费用seo搜索引擎优化工作内容
  • 摄影工作室网站模板武汉做网页推广公司
  • 上海市网站开发网络营销策划方案案例
  • 网站建设中需求分析报告怎么在百度发布自己的文章
  • 北京专业做网站设计公司信息推广
  • 交友网站建设的目的图片搜索识图入口
  • 网站建设的主要作用怎么自己找外贸订单
  • 上海免费网站建设公司外链推广是什么意思
  • 高端医疗网站建设网站安全查询系统
  • 安微网站建设百度云客服人工电话
  • 一家做土产网站百度竞价可以自学吗
  • 专门做团购的网站推广类软文
  • 登陆网站怎么做营销管理
  • 青岛个人建站模板网页怎么搜索关键词
  • wordpress网站程序廊坊seo快速排名
  • 静态网站怎么入侵如何快速提升自己
  • 公司注册资金最低标准搜索引擎优化
  • 昆明优化网站排名付费恶意点击软件
  • 惠东网络建站公司网站推广的方式有哪些
  • 长沙本地网站推广大连网站建设费用
  • 重庆建设厅网站首页什么是网络营销含义
  • 丽江网站制作公司郑州seo技术培训班
  • 怎样让客户做网站手机app软件开发