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

LeetCode 反转链表

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

解题思路

哈哈 一点思路也没有

在这里插入图片描述

设立一个pre指针,初始为空(注意是大写),然后设立一个cur指针,指向头结点

关键的部分在于指针指向的转换:

(1)先利用tmp指针保存cur的下一个位置

(2)连接curpre

(3)更新pre=cur,cur=tmp

最后注意头结点是pre

代码

/*** 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 *cur=head;ListNode *pre=NULL;while(cur){ListNode *tmp=cur->next;//保存cur后的下一个结点,以便更新curcur->next=pre;//反向连接pre=cur;cur=tmp;}return pre;//退出while循环说明cur已经是NULL了,所以此时pre指向头结点}
};
http://www.dtcms.com/a/342323.html

相关文章:

  • imx6ull-驱动开发篇33——platform 平台驱动模型
  • 【运维进阶】Shell 变量
  • Docker--Docker网络
  • 【学习笔记】网络安全专用产品类别与参考标准
  • 【问题思考】二分查找对比三分查找(任意点查找)的优越性(熵的角度)【gemini完成】
  • 语义分割开山之作:FCN网络从入门到精通
  • 概率论基础教程第5章 连续型随机变量(三)
  • 【复杂网络技术】什么是图神经网络?
  • Elasticsearch 面试题完整笔记
  • 大数据面试常见问题
  • 【网络】http 协议中 Vary 标头的作用
  • UI自动化测试
  • 【力扣 Hot100】滑动窗口巧解字串问题
  • 鸿蒙中基础耗时分析:Time分析
  • Minecraft 1.18.2 或更高版本(如1.19.2、1.20.1)选择模组mod加载器
  • spark数据缓存机制
  • 在没有客户端的客户环境下,如何用 Python 一键执行 MySQL 与达梦数据库 SQL
  • 【开源项目】边浏览边学外语:开源工具 Read Frog 如何用 AI 重构语言学习
  • Java实战:深度解析SQL中的表与字段信息(支持子查询、连接查询)
  • 粗粮厂的基于flink的汽车实时数仓解决方案
  • Elasticsearch Ruby 客户端elasticsearch / elasticsearch-api
  • 小程序UI(自定义Navbar)
  • 【TrOCR】用Transformer和torch库实现TrOCR模型
  • yggjs_rlayout 科技风主题布局使用教程
  • StarRocks不能启动 ,StarRocksFe节点不能启动问题 处理
  • macos使用FFmpeg与SDL解码并播放H.265视频
  • 【TrOCR】模型预训练权重各个文件说明
  • 从800米到2000米:耐达讯自动化Profibus转光纤如何让软启动器效率翻倍?
  • 表达式(CSP-J 2021-Expr)题目详解
  • Django的生命周期