当前位置: 首页 > news >正文

(链表)206. 反转链表

给你单链表的头节点 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

代码:

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode() : val(0), next(nullptr) {}
 *     ListNode(int x) : val(x), next(nullptr) {}
 *     ListNode(int x, ListNode *next) : val(x), next(next) {}
 * };
 */
class Solution {
public:
    ListNode* reverseList(ListNode* head) {
        
        ListNode *newhead = nullptr;
        ListNode *cur = head;

        while(cur != nullptr){
            ListNode *next = cur->next;

            cur->next = newhead;
            newhead = cur;
            cur = next;
        }

        return newhead;
    }
};

解题思路:

(1)定义一个新头部 newhead。

(2)遍历 head,注意 next 的指向。即先保存下一个节点,再将当前节点指向新头部 newhead。接着,移动新头部 newhead。最后,更新当前节点。

(3)链表就是指向的游戏。

相关文章:

  • Winfrom基础知识41-60
  • GolangTCP通信解决粘包问题
  • TOSUN同星TsMaster使用入门——3、使用系统变量及c小程序结合panel面板发送报文
  • Nping- Nmap中的一个工具-用于生成网络数据包并分析响应
  • 跳跃游戏 (leetcode 55
  • u8g2原理解析
  • Java中Math.random()的用法
  • 2025-03-15 学习记录--C/C++-PTA 练习3-4 统计字符
  • Java创造型模式之原型模式详解
  • 《基於Python的网络爬虫抓包技术研究与应用》
  • 基于“动手学强化学习”的知识点(一):第 14 章 SAC 算法(gym版本 >= 0.26)
  • 基本的WinDbg调试指令
  • SEO优先级矩阵:有限资源下的ROI最大化决策模型
  • 科技快讯 | “垃圾短信”可以被识别了;阿里正式推出AI旗舰应用;OpenAI深夜发布全新Agent工具
  • python数据分析文件夹篇--pandas,openpyxl,xlwings三种方法批量创建、 复制、删除工作表
  • JAVA中的多态性以及它在实际编程中的作用
  • 1141. 【贪心算法】排队打水
  • 【2025最新版】如何将fnm与node.js安装在D盘?【保姆级安装及人性话理解教程】
  • git submodule
  • 疗养院管理系统设计与实现(代码+数据库+LW)
  • 坐标大零号湾科创策源区,上海瑞金医院闵行院区正式启动建设
  • 视频丨为救心梗同学缺席职教高考的小伙姜昭鹏完成补考
  • 海外市场,押注中国无人驾驶龙头
  • 芬兰直升机相撞坠毁事故中五名人员全部遇难
  • 莫高义在第四届中国新闻发言人论坛开幕式上的致辞
  • 美国贸易政策|特朗普模式:你想做交易吗?