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

兰州网站推招聘预算网站怎么做

兰州网站推,招聘预算网站怎么做,网络营销案例,做网站生意不赚钱6目录 1.题目描述: 2.算法分析: 3.代码展示: 1.题目描述: 给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总…

目录

1.题目描述:

2.算法分析:

3.代码展示:


1.题目描述:

给你链表的头节点 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]

2.算法分析:

  1. 计算链表长度​​:

    • 首先遍历整个链表,统计节点的总数 n。这是为了知道有多少组 k 个节点需要反转。
  2. ​初始化辅助指针​​:

    • 使用一个虚拟头节点 dummy 可以简化操作,尤其是在处理头节点的反转时。
    • p 用于记录当前待反转子链表的前一个节点。
    • pre 和 cur 用于反转子链表。
  3. ​分组反转​​:

    • 只要剩余的节点数 n 大于等于 k,就进行反转:
      • 反转连续的 k 个节点:
        • 使用类似反转单链表的方法,逐个反转节点。
      • 调整连接:
        • 将反转后的子链表与前面的部分连接起来。
        • 将反转后的子链表的尾部与下一个子链表的头部连接。
        • 移动 p 到下一个待反转子链表的前一个节点。
  4. ​处理剩余节点​​:

    • 如果剩余的节点数不足 k,则不进行反转,直接保留原顺序。
  5. ​返回结果​​:

    • 由于 dummy 的 next 始终指向链表的头节点,因此返回 dummy->next

示例

假设链表为 1 -> 2 -> 3 -> 4 -> 5k = 2

  1. 计算长度 n = 5
  2. dummy -> 1 -> 2 -> 3 -> 4 -> 5
  3. 第一组反转 1 和 2
    • 反转后:2 -> 1cur 指向 3
    • 调整连接:dummy -> 21 -> 3
    • p 移动到 1
  4. 第二组反转 3 和 4
    • 反转后:4 -> 3cur 指向 5
    • 调整连接:1 -> 43 -> 5
    • p 移动到 3
  5. 剩余 n = 1,不足 k,不反转。
  6. 最终链表:2 -> 1 -> 4 -> 3 -> 5

3.代码展示:

ListNode* reverseKGroup(ListNode* head, int k) {int n = 0; // 代表节点的个数// 计算出链表节点的个数for (ListNode* cur = head; cur; cur = cur->next) {n++;}// 创建一个空节点,便于后续的操作ListNode* dummy = new ListNode(0, head);ListNode* p = dummy;ListNode* pre = nullptr;ListNode* cur = head;for (; n >= k; n-=k) {for (int i = 0; i < k; i++) {// 进行翻转操作ListNode* nex = cur->next;cur->next = pre;pre = cur;cur = nex;}if (p->next == nullptr) {return 0;}ListNode* temp = p->next;p->next->next = cur;p->next = pre;p = temp;}return dummy->next;}

25. K 个一组翻转链表 - 力扣(LeetCode)https://leetcode.cn/problems/reverse-nodes-in-k-group/

http://www.dtcms.com/a/498059.html

相关文章:

  • 做网站赚钱什么类型模版网站搭建
  • 馆陶网站建设电话做一个网站先做前段 还是后端
  • 旅游网站建设建议无锡建设市场网站
  • 玩家世界网站建设一般什么行业做网站的多
  • 网站的建设费用建设工程合同民法典
  • 什么网站可以免费做视频的软件下载wordpress 定时发送
  • 模板建站可以做优化吗公司建设网站需要多少钱
  • 珠海网站制作套餐招聘网站内容建设
  • 那些论坛网站做的比较好做网站的手机软件
  • 内含各种专业的网站搭建模板北京赛车网站开发多少钱
  • 广州外贸网站建设推广淘客联盟推广平台
  • 网站建设发展历程ppt拼多多找货源哪里找
  • 安徽建筑工程网站国外扁平化网站
  • 网站附件下载表格怎么做拓者设计吧室内设计官网登录
  • 建站公司属于什么类型网站建立需要多少钱
  • 在网站开发中进行用户管理私域流量运营管理
  • 网站开发 男生整合网络营销
  • 个人网站能干嘛广东省建设项目安全标准自评网站
  • 毕业设计做 做交易网站温岭网站建设
  • wordpress关闭多站点洛可可在线设计平台
  • 网络营销教程移动网站优化
  • 网站建设调查通知17zwd一起做网站广州新塘
  • 广州从化网站建设网站建站平台广告
  • 监控摄像头做斗鱼直播网站一级域名做网站的好处
  • 中国建设银行积分网站域名注册查询官网
  • 成都的教育品牌网站建设wordpress调用支付宝
  • 网站开发4k分辨率上杭网页制作
  • 建设一个电子文学网站资金多少搜索wordpress
  • 学做美食饮品网站企业文化宣传册模板
  • 制作网站的公司叫什么猫咪社区免费资源在线观看