leetcode24: 两两交换链表中的节点

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

输入:head = 1,2,3,4

输出:2,1,4,3

示例 2:

输入:head = \[\]

输出:\[\]

示例 3:

输入:head = 1

输出:1

java 复制代码
if (head == null || head.next == null) {
            return head;
        }
        ListNode subHead = swapPairs(head.next.next);
        ListNode headNext = head.next;
        headNext.next = head;
        head.next = subHead;
        return headNext;
相关推荐
夏幻灵1 小时前
LeetCode 21:合并两个有序链表——双指针与哑节点详解
算法·leetcode·链表
码完就睡3 小时前
数据结构——红黑树
数据结构
码爸3 小时前
数据结构详细介绍
数据结构
夏幻灵6 小时前
每日一题:LeetCode 206:反转链表——三指针与原地反转详解
算法·leetcode·链表
CQU_JIAKE6 小时前
10.9【A】
数据结构
第25小时记录6 小时前
数据结构与算法 -第 3 章 常用算法-动态规划
数据结构·python
Logic10110 小时前
C语言/数据结构数位DP题解:平滑排列数字统计——区间内相邻位差不超过K的数字个数
c语言·数据结构·动态规划·时间复杂度·数位dp·算法题·前导零处理
wang090712 小时前
硬着头皮学数据结构和算法之Myers算法
数据结构·算法
垆边人似月.12 小时前
华为机试题 :最长递增子序列题目
数据结构·c++·算法·华为