24. 两两交换链表中的节点

给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。

示例 1:

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

示例 2:

输入:head = []
输出:[]

示例 3:

输入:head = [1]
输出:[1]
/**
 * @param {ListNode} head
 * @return {ListNode}
 */
var swapPairs = function (head) {
  let dummy_node = new ListNode(-1, head);
  let prev = dummy_node;
  let curr = prev.next
  let after = curr ? curr.next : null;
  while (curr && after) {
    curr.next = after.next;
    after.next = curr;
    prev.next = after;
    prev = curr;
    curr = curr ? curr.next : null;
    after = curr ? curr.next : null;
  }
  return dummy_node.next;
};

相关推荐

  1. leetcode24. 交换节点

    2024-06-08 23:22:05       51 阅读
  2. LC24. 交换节点

    2024-06-08 23:22:05       49 阅读
  3. LeetCode [24] 交换节点

    2024-06-08 23:22:05       46 阅读
  4. 【Leetcode】24. 交换节点

    2024-06-08 23:22:05       46 阅读
  5. LeetCode24.交换节点

    2024-06-08 23:22:05       42 阅读

最近更新

  1. Jupyter Notebook详尽安装教程

    2024-06-08 23:22:05       0 阅读
  2. 实现淘客返利系统中的用户登录与权限管理

    2024-06-08 23:22:05       0 阅读
  3. 【力扣】每日一题—第70题,爬楼梯

    2024-06-08 23:22:05       1 阅读
  4. mysql快速精通(一)DQL数据查询语言

    2024-06-08 23:22:05       1 阅读
  5. 408第二轮复习 数据结构 第七章查找

    2024-06-08 23:22:05       1 阅读
  6. Python中的迭代器与可迭代对象的概念及其关系

    2024-06-08 23:22:05       1 阅读
  7. 大数据面试题之Greenplum(2)

    2024-06-08 23:22:05       1 阅读

热门阅读

  1. Ubuntu 20.04的安装过程

    2024-06-08 23:22:05       12 阅读
  2. 【Python入门与进阶】Anaconda包管理与所有指令

    2024-06-08 23:22:05       10 阅读
  3. python怎么倒包:深入探索Python中的逆向导入技术

    2024-06-08 23:22:05       10 阅读
  4. ffmpeg解码播放

    2024-06-08 23:22:05       7 阅读
  5. 如何轻松修改Windows远程连接的端口号

    2024-06-08 23:22:05       10 阅读
  6. Oracle数据库面试题-4

    2024-06-08 23:22:05       7 阅读
  7. 【Vue】Vue路由-模式设置

    2024-06-08 23:22:05       9 阅读
  8. 7-16 二分查找

    2024-06-08 23:22:05       8 阅读
  9. XSS跨站脚本攻击

    2024-06-08 23:22:05       7 阅读
  10. 12寸晶圆厂建设概述

    2024-06-08 23:22:05       12 阅读
  11. [知识点]C 标准库常用字符串处理函数

    2024-06-08 23:22:05       10 阅读