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

反转链表 (oj题)

一、题目链接

https://leetcode.cn/problems/reverse-linked-list/submissions/538124207

二、题目思路

1.定义三个指针,p1先指向NULL  p2指向头结点    p3指向第二个结点

2.p2的next指向p1。然后移动指针,p1来到p2的位置,p2来到p3的位置,p3去到它的下一个结点

循环执行,直至p2到达空结点的位置。这时,反转结束,新头结点就是p1现在的位置

三、题解代码

struct ListNode* reverseList(struct ListNode* head) 
{if(head==NULL)//如果是空链表直接返回NULLreturn NULL;struct ListNode*p1=NULL;//p1先指向NULLstruct ListNode* p2 = head;//p2指向头结点struct ListNode* p3 = p2->next;//p3指向第二个结点//p2的next指向p1。然后移动指针,p1来到p2的位置,p2来到p3的位置,p3去到它的下一个结点
//循环执行,直至p2到达空结点的位置。这时,反转结束,新头结点就是p1现在的位置
while (p2!= NULL)
{p2->next = p1;p1 = p2;p2 = p3;//如果p3不为NULL,才能让它移动到下一个位置if(p3!=NULL)p3 =p3->next;
}//反转结束,新头结点就是p1现在的位置
head = p1;
return head;}

相关文章:

  • C++中的sizeof和strlen详解
  • 【玩转C语言】第三讲---> scanf 和 printf 函数详解(非常重要)!
  • Redisson知识
  • 斯坦福天才少女创5亿独角兽!Pika获8000万融资,金牌团队首曝光
  • 小主机折腾记24
  • 计算机基础(8)——音频数字化(模电与数电)
  • WPF中读取Excel文件的内容
  • 利用keepalived对zabbix-server做高可用,部署安装keepalived
  • 【WEB前端2024】智体OS:poplang编程控制成本小千元的长续航robot机器人底盘(开源)
  • C语言——内存函数
  • Linux 35.5 + JetPack v5.1.3@FC-Planner编译安装
  • 深入解析Java扩展机制:SPI与Spring.factories
  • Python的登录注册界面跳转汽车主页面
  • Rust : windows下protobuf尝试
  • 生物神经网络 原理分析研读02
  • [微信小程序] 使用ES6特性Class后出现编译异常
  • canvas 高仿 Apple Watch 表盘
  • httpie使用详解
  • IDEA 插件开发入门教程
  • PHP 7 修改了什么呢 -- 2
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • React中的“虫洞”——Context
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • yii2权限控制rbac之rule详细讲解
  • 纯 javascript 半自动式下滑一定高度,导航栏固定
  • 缓存与缓冲
  • 基于axios的vue插件,让http请求更简单
  • 聊聊spring cloud的LoadBalancerAutoConfiguration
  • 前端面试之CSS3新特性
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 数组大概知多少
  • 自动记录MySQL慢查询快照脚本
  • gunicorn工作原理
  • TPG领衔财团投资轻奢珠宝品牌APM Monaco
  • 阿里云API、SDK和CLI应用实践方案
  • 大数据全解:定义、价值及挑战
  • 带你开发类似Pokemon Go的AR游戏
  • 如何用纯 CSS 创作一个货车 loader
  • #微信小程序(布局、渲染层基础知识)
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • (39)STM32——FLASH闪存
  • (42)STM32——LCD显示屏实验笔记
  • (二)Pytorch快速搭建神经网络模型实现气温预测回归(代码+详细注解)
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (四)Linux Shell编程——输入输出重定向
  • (五)activiti-modeler 编辑器初步优化
  • .Mobi域名介绍
  • .Net 6.0 处理跨域的方式
  • .Net FrameWork总结
  • .Net MVC4 上传大文件,并保存表单
  • .Net Web项目创建比较不错的参考文章
  • .Net 基于IIS部署blazor webassembly或WebApi
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题
  • @component注解的分类