day4 节点两两交换

ListNode* swapPairs(ListNode* head) {

        ListNode* dummyHead = new ListNode(0); // 设置一个虚拟头结点

        dummyHead->next = head; // 将虚拟头结点指向head,这样方便后面做删除操作

        ListNode* cur = dummyHead;

        while(cur->next != nullptr && cur->next->next != nullptr) {

            ListNode* tmp = cur->next; // 记录临时节点

            ListNode* tmp1 = cur->next->next->next; // 记录临时节点

 

            cur->next = cur->next->next;    // 步骤一

            cur->next->next = tmp;          // 步骤二

            cur->next->next->next = tmp1;   // 步骤三

 

            cur = cur->next->next; // cur移动两位,准备下一轮交换

        }

        return dummyHead->next;

    }

 

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-07 14:48:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-07 14:48:04       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-07 14:48:04       87 阅读
  4. Python语言-面向对象

    2023-12-07 14:48:04       96 阅读

热门阅读

  1. Jtti:降低香港服务器被攻击的几种策略方法

    2023-12-07 14:48:04       56 阅读
  2. Rust:入门指南与编程的奇妙冒险

    2023-12-07 14:48:04       66 阅读
  3. C语言语义缺陷(一)

    2023-12-07 14:48:04       53 阅读
  4. python 实现 excle读取时间序列数据并画图显示

    2023-12-07 14:48:04       69 阅读
  5. WordPress定时发布文章失败的原因及解决办法

    2023-12-07 14:48:04       53 阅读
  6. 程序员养生指南-八段锦

    2023-12-07 14:48:04       55 阅读
  7. 【recrutment / Hiring / Job / Application】

    2023-12-07 14:48:04       38 阅读
  8. 项目中使用AI功能

    2023-12-07 14:48:04       59 阅读