【力扣hot100题】反转链表(18)

给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。

示例 1:

复制代码
输入:head = [1,2,3,4,5]
输出:[5,4,3,2,1]

示例 2:

复制代码
输入:head = [1,2]
输出:[2,1]

示例 3:

复制代码
输入:head = []
输出:[]

提示:

  • 链表中节点的数目范围是 [0, 5000]
  • -5000 <= Node.val <= 5000

**进阶:**链表可以选用迭代或递归方式完成反转。你能否用两种方法解决这道题?

cpp 复制代码
class Solution {
public:
    ListNode* reverseList(ListNode* head) {
        if (!head || !head->next) {
            return head;
        }
        ListNode* newHead = reverseList(head->next);
        head->next->next = head;
        head->next = nullptr;
        return newHead;
    }
};
相关推荐
_日拱一卒3 分钟前
LeetCode:矩阵置零
java·数据结构·线性代数·算法·leetcode·职场和发展·矩阵
穿条秋裤到处跑5 分钟前
每日一道leetcode(2026.04.10):三个相等元素之间的最小距离 I
算法·leetcode
nlpming15 分钟前
OpenClaw 代码解析
算法
学习永无止境@18 分钟前
MATLAB中矩阵转置
算法·matlab·fpga开发·矩阵
七颗糖很甜18 分钟前
雨滴谱数据深度解析——从原始变量到科学产品的Python实现【下篇】
python·算法·pandas
nlpming19 分钟前
OpenClaw system prompt定义
算法
nlpming19 分钟前
OpenClaw安装配置及简介
算法
爱码小白20 分钟前
MySQL 常用数据类型的系统总结
数据库·python·算法
玛丽莲茼蒿27 分钟前
Leetcode hot100 【中等】括号生成
算法·leetcode·职场和发展
小欣加油29 分钟前
leetcode 128 最长连续序列
c++·算法·leetcode·职场和发展