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

网站设计师与网站开发工程师谷歌seo外链

网站设计师与网站开发工程师,谷歌seo外链,wordpress大前端哪个好,qq邮件网站建设的模块题目: 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head [1,2,3,4,5] 输出:[5,4,3,2,1] 思路: 使用迭代法反转单链表,通过三个指针(pre、…

题目:

给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。

示例 1:

输入:head = [1,2,3,4,5]
输出:[5,4,3,2,1]

思路:

使用迭代法反转单链表,通过三个指针(precurtmp)在遍历链表的过程中逐步反转节点的指向关系。核心思想是:

  1. 保存下一个节点:在修改当前节点的next指针前,先保存它的原始下一个节点

  2. 反转指针:将当前节点的next指针指向前一个节点

  3. 移动指针:将precur指针向前移动,继续处理下一个节点

  4. 终止条件:当cur为NULL时,表示所有节点都已处理完毕

代码:

struct ListNode* reverseList(struct ListNode* head) 
{// 当前节点指针,初始指向链表头struct ListNode* cur = head;// 前驱节点指针,初始为NULL(因为反转后的链表尾应该指向NULL)struct ListNode* pre = NULL;// 遍历链表直到当前节点为空while(cur != NULL){// 临时保存当前节点的下一个节点// 因为在修改cur->next后会丢失原始的下一个节点信息struct ListNode * tmp = cur->next;// 反转操作:将当前节点的next指针指向前一个节点cur->next = pre;// 前驱指针向前移动:pre移动到当前节点位置pre = cur;// 当前指针向前移动:cur移动到之前保存的下一个节点位置cur = tmp;}// 循环结束时,pre指向原链表的最后一个节点,即新链表的头节点return pre;
}

代码分析:

关键步骤说明

  1. 指针初始化

    • cur初始化为head,表示从链表头开始处理

    • pre初始化为NULL,因为反转后的链表尾应该指向NULL

  2. 循环中的四步操作

    • 保存next节点tmp = cur->next(防止修改指针后丢失信息)

    • 反转指针cur->next = pre(改变当前节点的指向)

    • 移动pre指针pre = cur(pre前进到当前节点位置)

    • 移动cur指针cur = tmp(cur前进到下一个待处理节点)

  3. 终止条件

    • curNULL时,表示所有节点都已处理完毕

  4. 返回值

    • pre最终指向原链表的最后一个节点,即反转后新链表的头节点

示例演示

以链表 1 → 2 → 3 → NULL 为例:

  1. 初始状态:

    • cur: 1 → 2 → 3 → NULL

    • pre: NULL

  2. 第一次循环后:

    • 链表:1 → NULL

    • pre: 1 → NULL

    • cur: 2 → 3 → NULL

  3. 第二次循环后:

    • 链表:2 → 1 → NULL

    • pre: 2 → 1 → NULL

    • cur: 3 → NULL

  4. 第三次循环后:

    • 链表:3 → 2 → 1 → NULL

    • pre: 3 → 2 → 1 → NULL

    • cur: NULL

最终返回pre(3),得到反转后的链表 3 → 2 → 1 → NULL

http://www.dtcms.com/wzjs/132848.html

相关文章:

  • 上海专业网站建设 公司厦门关键词优化企业
  • 精致的网站创建网站花钱吗
  • 一个网站价格疫情最新数据
  • 上海闵行网站制作公司品牌如何推广
  • 网站与网页seo推广任务小结
  • 陕西手机网站制作班级优化大师客服电话
  • wordpress搬家 乱码网站排名优化教程
  • 邯郸外贸网站建设网络营销策划活动方案
  • 电子商务网站体系结构有哪些?比百度好用的搜索引擎
  • 济南品质网站建设哪家好东莞网络营销推广软件
  • git怎么做隐私政策网站太原网站优化
  • 毕设做网站些什么比较简单营销推广的平台
  • 团购网站 方案免费浏览外国网站的软件
  • 网站建设 价格低手机网站怎么优化
  • 黑彩网站开发成人职业技能培训有哪些项目
  • 做招聘网站用哪个cms网页游戏
  • 做网站需要学会什么软件百度账号人工申诉
  • 深圳网站建设公司排行榜网站推广的方法和途径
  • 福建漳州网站建设公司站长之家网站
  • 网站规划有什么意义推广哪个网站好
  • 手机做网站怎么做广州王牌seo
  • 防伪码查询网站怎么做的河源市企业网站seo价格
  • 同一个域名可以做几个网站吗网站收录查询站长工具
  • 如何取一个大气的名字的做网站杭州网站推广大全
  • 新开的公司做网站多少钱推广排名seo
  • 营销型网站制作多少钱独立站网站
  • 免费做视频相册的网站免费域名申请网站
  • 政府网站的用途怎么免费做网站
  • 做网站做推广小红书新媒体营销案例分析
  • 电子商务网站规划原则怎么在百度上发布广告