【leetcode】反转链表

大家好,我是苏貝,本篇博客带大家刷题,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️


目录

  • [方法1 .将箭头方向逆转](#方法1 .将箭头方向逆转)
  • 方法2.

点击查看题目

方法1 .将箭头方向逆转

思路:

n1,n2,n3分别指向NULL,head,head->next

用循环,每次都让n2->next指向n1,再让n1=n2,n2=n3,n3=n3->next

c 复制代码
struct ListNode* reverseList(struct ListNode* head) {
    if(head==NULL)
        return NULL;
    struct ListNode* n1=NULL;
    struct ListNode* n2=head;
    struct ListNode* n3=head->next;
    while(n2)
    {
        n2->next=n1;

        n1=n2;
        n2=n3;
        if(n3)
            n3=n3->next;        
    }
    return n1;
}

方法2.

思路

3个变量,cur=head,tail=NULL,next=cur->next

用循环,每次都让cur->next指向tail,再让tail=cur,cur=next

c 复制代码
struct ListNode* reverseList(struct ListNode* head) {

    struct ListNode* cur=head;
    struct ListNode* tail=NULL;
    while(cur)
    {
        struct ListNode* next=cur->next;
        cur->next=tail;
        tail=cur;
        cur=next;
    }
    return tail;
}

好了,那么本篇博客就到此结束了,如果你觉得本篇博客对你有些帮助,可以给个大大的赞👍吗,感谢看到这里,我们下篇博客见❤️

相关推荐
粥啊、18 分钟前
十六、流编辑器sed(stream editor)
linux·运维·服务器
小Mie不吃饭43 分钟前
Linux | 零基础Ubuntu卸载MySQL Server 零痕迹
linux·运维·ubuntu
小嵌同学1 小时前
Linux RTC 驱动框架
linux·arm开发·驱动开发·嵌入式硬件
不爱学英文的码字机器1 小时前
在 Linux 中如何使用粘滞位 (t-bit)共享文件
linux·服务器·数据库
cr.sheeper1 小时前
Vulnhub靶场morpheus获得shell攻略
linux·网络安全·vulnhub
vvw&1 小时前
如何在 Ubuntu 22.04 上安装 Elasticsearch
linux·运维·服务器·后端·ubuntu·elasticsearch·搜索引擎
ccb_2 小时前
两个链表的第一个公共结点
数据结构·链表
花晓木2 小时前
SSH无法启动问题:OpenSSL version mismatch. Built against 30000070, you have 30200020
linux·运维·ssh
vvw&3 小时前
如何在 Ubuntu 22.04 上安装并开始使用 RabbitMQ
java·linux·运维·服务器·spring·ubuntu·rabbitmq
Tfly__3 小时前
ubuntu 18.04安装GCOPTER(最新)
linux·c++·ubuntu·github·ros·无人机·运动规划