LeetCode-25 -两两交换链表中的节点

力扣24题

题目描述:

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

**题解思路:**递归,确定递归三部曲的条件:

  1. 确定递归函数的参数和返回值:回交换后子链表的头节点;
  2. 确定递归的终止条件:temp是null或head是null
  3. 确定单层递归的逻辑:temp是head的下一个节点,head后接交换完成的子链表,temp接head;
java 复制代码
class Solution {
    public ListNode swapPairs(ListNode head) {
        if(head==null || head.next==null){
            return head;
        }
        ListNode temp=head.next;
        // 执行递归逻辑
        head.next=swapPairs(temp.next);
        temp.next=head;
        return temp;
    }
}
相关推荐
代码游侠12 分钟前
C语言核心概念复习——网络协议与TCP/IP
linux·运维·服务器·网络·算法
2301_7634724622 分钟前
C++20概念(Concepts)入门指南
开发语言·c++·算法
abluckyboy1 小时前
Java 实现求 n 的 n^n 次方的最后一位数字
java·python·算法
园小异1 小时前
2026年技术面试完全指南:从算法到系统设计的实战突破
算法·面试·职场和发展
m0_706653231 小时前
分布式系统安全通信
开发语言·c++·算法
天天爱吃肉82182 小时前
跟着创意天才周杰伦学新能源汽车研发测试!3年从工程师到领域专家的成长秘籍!
数据库·python·算法·分类·汽车
alphaTao2 小时前
LeetCode 每日一题 2026/2/2-2026/2/8
算法·leetcode
甄心爱学习2 小时前
【leetcode】判断平衡二叉树
python·算法·leetcode
颜酱3 小时前
从二叉树到衍生结构:5种高频树结构原理+解析
javascript·后端·算法
不知名XL3 小时前
day50 单调栈
数据结构·算法·leetcode