文章目录

  • 题目
  • 题解

题目

https://leetcode-cn.com/problems/UHnkqh/submissions/

题解

题目所给的头结点是指第一个数据节点,所以我们需要自己建立虚拟头结点dummy,并指向第一个数据节点head。

然后就是遍历链表的后两个节点,不断将后一个结点q前移,并用dummy指向这个q。

ac代码

/*** 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 *dummy =(ListNode *)malloc(sizeof(ListNode));dummy->next = head;if (head == NULL) return NULL; // 空链表ListNode *p = dummy->next;ListNode *q;while (p->next) {q = p->next;p->next = q->next;q->next = dummy->next;dummy->next = q; }return dummy->next;}
};

Leetcode剑指 Offer II 024. 反转链表相关推荐

  1. 剑指 Offer II 024. 反转链表

    注:本文的代码实现使用的是 JS(JavaScript),为前端中想使用JS练习算法和数据结构的小伙伴提供解题思路. 描述 给定单链表的头节点 head ,请反转链表,并返回反转后的链表的头节点. 示 ...

  2. 剑指offer系列-24.反转链表

    剑指offer系列第24题.反转链表 题目描述: 定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点. 示例:输入: 1->2->3->4->5->N ...

  3. LeetCode 剑指 Offer II 前缀树(上) 专题总结

  4. 剑指 Offer II 026. 重排链表

    思路:找栈的中心位置,然后将后半部分全部送入栈中,然后一前一后挨个对接即可. class Solution {public void reorderList(ListNode head) {ListN ...

  5. 力扣OJ 剑指 Offer II

    目录 剑指 Offer II 001. 整数除法 剑指 Offer II 002. 二进制加法 剑指 Offer II 003. 前 n 个数字二进制中 1 的个数 剑指 Offer II 004. ...

  6. LeetCode 21.23.剑指 Offer II 078. 合并两个有序链表 | C语言版

    LeetCode 21. 合并两个有序链表 | C语言版 LeetCode 21. 合并两个有序链表 题目描述 解题思路 思路一:使用栈 代码实现 运行结果 参考文章: 思路二:减少遍历节点数 代码实 ...

  7. Leetcode刷题笔记——剑指offer II (一)【整数、数组、字符串、链表】

    目录 整数 剑指 Offer II 001. 整数除法 剑指 Offer II 002. 二进制加法 剑指 Offer II 003. 前 n 个数字二进制中 1 的个数 剑指 Offer II 00 ...

  8. LeetCode Algorithm 剑指 Offer II 056. 二叉搜索树中两个节点之和

    剑指 Offer II 056. 二叉搜索树中两个节点之和 Ideas 这题有点类似一个组合题,首先是通过二叉树遍历得到一个序列,然后再通过LeetCode Algorithm 1. 两数之和的方法查 ...

  9. 【LeetCode】剑指 Offer 52. 两个链表的第一个公共节点

    [LeetCode]剑指 Offer 52. 两个链表的第一个公共节点 文章目录 [LeetCode]剑指 Offer 52. 两个链表的第一个公共节点 一.双指针 一.双指针 设 "第一个 ...

最新文章

  1. 如何以编程方式在Android上截屏?
  2. bashrc文件实例
  3. JavaScript动态设置table的高度
  4. C++string容器-赋值操作
  5. 深入JVM——OOM异常解析
  6. python封装模块_Python练手,封装日志模块,v2
  7. html 字体思源_网页使用思源字体 CSS
  8. 网络安全工具100强介绍与下载
  9. 获取当天开始时间以及结束时间
  10. java根据ip地址获取详细地域信息
  11. 如何正确地在Spring Data JPA和Jackson中用上Java 8的时间相关API(即JSR 310也即java.time包下的众神器)...
  12. 摄氏度转华氏度,并且输出的结果保留两位小数
  13. SANY北京地区笔试题(研发类岗位)
  14. 优秀计算机基础微课案例,大学计算机基础——大学微课实用案例教学
  15. 计算机窗口是什么意思解释,Windows电脑窗口是什么?关于电脑窗口的一些基础知识...
  16. 3DS动物之森不完全攻略整合
  17. C语言入门(八)一维数组
  18. transferTo和transferFrom
  19. 新网站收录情况的seo分析
  20. mac时间机器的使用

热门文章

  1. 第二轮冲刺-Runner站立会议04
  2. NSPredicate的用法
  3. Oracle AWR 报告中 No data exists for this section of the report 说明
  4. java 向量空间模型_VSM向量空间模型对文本的分类以及简单实现
  5. lmbs PHP,PHP的GD2函数创建折线图源码示例
  6. 【Paper】31_[18]On a Dynamic Extension of the Theory of Graphs
  7. 【控制】李亚普诺夫稳定性分析
  8. 【arduino】nodemcu(ESP8266)发送邮件库测试笔记,SMTP email
  9. Nature:中国正在上演AI人才争夺战,中国公司在与Google竞争
  10. TalkingData:用好大数据,为企业转型赋能