栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

《剑指offer-P22》【剑指Offer 24.反转链表】

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

《剑指offer-P22》【剑指Offer 24.反转链表】

个人主页:企鹅不叫的博客

​ 专栏

  • C语言初阶和进阶
  • C项目
  • Leetcode刷题
  • 初阶数据结构与算法
  • C++初阶和进阶

⭐️ 博主码云gitee链接:代码仓库地址

⚡若有帮助可以【关注+点赞+收藏】,大家一起进步!


文章目录
  • 一、题目
    • 1.题目描述
    • 2.原题链接
  • 二、解题报告
    • 1.思路分析
    • 2.代码详解


一、题目 1.题目描述

2.原题链接

剑指Offer 24.反转链表

二、解题报告 1.思路分析

思路:

​ 1.用头节点依次链接
2.无头节点依次翻转链表

2.代码详解
struct ListNode* reverseList(struct ListNode* head){
    //无头节点翻转
    if(head == NULL){
        return NULL;
    }
    struct ListNode* cur = head;
    struct ListNode* next = cur->next;
    struct ListNode* newhead =NULL;
    while(cur != NULL){
        cur->next = newhead;            //1
        newhead = cur;
        cur = next;                     //2
        if(next!=NULL){                 //3
            next = next->next; 
        }
    }
    return newhead;
}

1.首先把当前节点置空
2.然后依次移动cur和newhead
3.移动next要判断是否为空,防止越界


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/849731.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号