📣 📣 📣 📢📢📢
☀️☀️你好啊!小伙伴,我是小冷。是一个兴趣驱动自学练习两年半的的Java工程师。
📒 一位十分喜欢将知识分享出来的Java博主⭐️⭐️⭐️,擅长使用Java技术开发web项目和工具
📒 文章内容丰富:覆盖大部分java必学技术栈,前端,计算机基础,容器等方面的文章
📒 如果你也对Java感兴趣,关注小冷吧,一起探索Java技术的生态与进步,一起讨论Java技术的使用与学习
✏️高质量技术专栏专栏链接: 微服务,数据结构,netty,单点登录,SSM ,SpringCloudAlibaba等
😝公众号😝 : 想全栈的小冷,分享一些技术上的文章,以及解决问题的经验
⏩当前专栏:力扣算法刷题题系列
⏩专栏代码地址: 当前是刷题专栏呢
题目
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。
解题思路 比较简单的一题 但也是必须掌握的链表操作
- 首先我们需要选操作链表的方法,这里我们用递归来做这道题
- 我们只需要一直让 head 也就是头结点的下一个节点指向上节点,让上一个节点指向空就可以了;
class Solution {
public ListNode reverseList(ListNode head) {
// 判断非空
if(head==null||head.next==null){
return head;
}
ListNode last = reverseList(head.next);
//下一个节点 指向 当前节点,当前节点不指向,下次递归进来会将当前节点当成下一个节点
head.next.next = head;
head.next = null;
return last;
}
}
搞定 代码量少 思路清晰 这就是算法的乐趣